# The QMS Configuration File

QMS is configured by editing its configuration file. This is in the same directory as the QMS executable, and by default is named `qms.cfg`. You can edit the configuration file with a text editor.

The configuration file contains settings that determine the basic details that the QMS needs to run. It includes location and port details for QMS, logging details, and details of the servers that QMS connects to. For information about the configuration parameters, refer to the QMS Reference.

The QMS configuration file is divided into several sections, which represent different features that you can configure.

## [ACIEncryption] Section

You can use the `[ACIEncryption]` section to encrypt communications between ACI servers and any applications that use the ACI API. For example:

    [ACIEncryption]
    CommsEncryptionType=GSS
    ServiceName=Kerberos

## [AuthorizationRoles] Section

The `[AuthorizationRoles]` defines roles that enable a particular set of actions for particular clients, SSL identities, and GSS principals. You must create a subsection for each authorization role that you define in the `[AuthorizationRoles]` configuration section.

For example:

    [AuthorizationRoles]
    0=AdminRole
    1=UserRole

    [AdminRole]
    StandardRoles=Admin,Index,ServiceControl
    Clients=localhost
    SSLIdentities=admin.example.com

    [UserRole]
    StandardRoles=Query,ServiceStatus
    SSLIdentities=admin.example.com,userserver.example.com

## [IDOL] Section

The `[IDOL]` configuration section contains settings that allow QMS to contact the DAH, IDOL Server, or Content component that contains the data index. For example:

    [IDOL]
    Host=localhost
    Port=9100

## [LanguageTypes] Section

The `[LanguageTypes]` configuration section determines the language processing settings that QMS uses.

QMS retrieves most language settings from the IDOL Content component.

To use the `OutputEncoding` parameter in your query actions, you must set `LanguageDirectory`. Micro Focus generally recommends that you do not override other language settings in QMS, to ensure that your components use the same language model.

If you do need to change the other language settings in QMS, you can set any parameters in the QMS configuration file that are available in the IDOL Content component `[LanguageTypes]` configuration. For more information, refer to the IDOL Server Reference.

    [LanguageTypes]
    LanguageDirectory=../common/langfiles

## [Logging] Section

The `[Logging]` section lists the log streams that you set up to create separate log files for different log message types (action and application). It also contains a subsection for each of the listed log streams, in which you configure the settings that determine how to log each stream. For example:

    [Logging]
    LogDirectory=./logs
    LogTime=True
    LogEcho=True
    LogLevel=normal
    LogMaxSizeKBs=1024
    LogExpireAction=compress

    0=ACTION_LOG_STREAM
    1=APP_LOG_STREAM

    [ACTION_LOG_STREAM]
    LogFile=action.log
    LogTypeCSVs=query

    [APP_LOG_STREAM]
    LogFile=application.log
    LogTypeCSVs=application

## [PromotionAgentStore] Section

The `[PromotionAgentStore]` configuration section contains settings that allow QMS to contact the Promotion Agentstore component. For example:

    [PromotionAgentStore]
    Host=localhost
    Port=20050

## [Server] Section

The `[Server]` configuration section contains general settings for QMS. For example:

    [Server]
    Port=16000
    DefaultLanguage=ENGLISH
    DefaultLanguageType=GenericUTF8
    AllowedQueryParams=Text,MatchResults
    EngineTimeout=180
    MaxResultsLimit=5000

NOTE: QMS obtains language settings from the Content component on startup. However, if this is not possible because of the security settings of your Content ACI port, or if you want to use sentence breaking libraries for query text processing, you can use the `DefaultLanguageType` parameter in the `[Server]` section of the QMS configuration file to set the default language type from within QMS itself. For more information, refer to the QMS Reference.

You can also list the languages that you use and define some generic parameters in the `[LanguageTypes]` section in the QMS configuration file. For more information on how to configure language types, refer to the IDOL Server Reference.

## [Service] Section

The `[Service]` configuration section contains settings that determine which machines can use and control the IDOL Server service. For example:

    [Service]
    ServicePort=16002

## [SSLOptionN] Section

The `[SSLOptionN]` configuration section contains settings that allow QMS to receive SSL connections from clients. For example:

    [Server]
    SSLConfig=SSLOptions1
    ...

    [SSLOptions1] //SSL options for incoming connections
    SSLMethod=TLSV1.2
    SSLCertificate=host1.crt
    SSLPrivateKey=host1.key
    SSLCACertificate=trusted.crt

_FT_HTML5_bannerTitle.htm