Configurando o Apache para Linux

Existem algumas configurações que devem ser ajustadas antes de podermos executar o arquivo SO gerado.

1

Criar arquivos de configuração do módulo

Abra um terminal e vá para o diretório mods-enabled do Apache:

Terminal
cd /etc/apache2/mods-enabled

Crie um novo arquivo de configuração (por exemplo, usando gedit) e adicione as seguintes linhas:

uni_apache.conf
<Location /uniapache>
  SetHandler libuniApache-handler
</Location>

Observações:

  • Location define o caminho virtual ou alias da aplicação. Neste exemplo o app ficará acessível em: http://apache_server/uniapache

  • O nome do handler libuniApache-handler é formado adicionando o sufixo -handler ao nome do seu arquivo SO.

Salve este arquivo como uni_apache.conf.

2

Criar o arquivo de carregamento do módulo

No gedit crie um novo documento e adicione a linha LoadModule apontando para o seu arquivo .so do módulo:

uni_apache.load
LoadModule uniapache_module /home/linux_user/PAServer/scratch-dir/elite-Ubuntu64/uniApache/libuniApache.so

Salve este novo documento como uni_apache.load.

Este arquivo de load informa ao Apache a localização do seu módulo.

3

Nome do módulo no seu projeto

O identificador uniapache_module é o nome definido no arquivo do seu projeto de biblioteca. Você pode alterá-lo editando o arquivo DPR do seu projeto. Exemplo de declaração:

DPR / trecho de código fonte
// Declare exported variable so that Apache can access this module.
var
  GModuleData: TApacheModuleData;
exports
  GModuleData name 'uniapache_module';
4

Ajustar o comportamento dos workers do Apache (uma vez)

Por padrão o Apache lança múltiplos processos worker. Isso entra em conflito com o gerenciamento de sessão do uniGUI. Edite o mpm_event.conf arquivo localizado em /etc/apache2/mods_enabled e defina os parâmetros do worker:

Abra o arquivo com sudo:

Terminal
sudo gedit mpm_event.conf

No editor defina:

{% endcode %}
{% endstep %}

{% step %}
## Reiniciar o Apache

Aplique as alterações reiniciando o Apache:

{% code title="Terminal" %}
```bash
sudo systemctl restart apache2.service
circle-info

Capturas de tela das instruções originais (mantidas para referência):

Screenshot from 2020-07-22 14-12-40

Screenshot from 2020-07-22 17-48-16