Como instalar o GLPI 11.0.4 no Ubuntu Server 24.04 LTS


Para esta instalação estarei usando o seguinte cenário:
  • Um servidor Linux Ubuntu 24.04 LTS
  • Um servidor web - Apache
  • Um interpretador de código - PHP
  • Um Gerenciador de Banco de Dados MySQL.
Irei dividir o processo de instalação nas seguintes etapas:

1. Atualização do repositório e das aplicações;
2 - Instalação dos componentes;
3. Instalação do GLPI;
4. Acesso ao GLPI.

1. Atualização do repositório e das aplicações

apt-get update | apt-get upgrade -y

2 - Instalação dos componentes

2.1. Instalação do Servidor Web Apache e PHP

apt-get install -y apache2 php8.3-{apcu,cli,common,curl,gd,imap,ldap,mysql,xmlrpc,xml,mbstring,bcmath,intl,zip,redis,bz2} libapache2-mod-php php-soap php-cas

2.3. Instalação do Gerenciador de Banco de Dados MySQL

apt-get install mysql-server -y

2.3.1. Configuração do banco de dados glpi

mysql -u root -p

Digite sua senha de root

mysql > CREATE DATABASE glpi; // Cria o banco de dados glpi

mysql >CREATE USER 'glpi'@'localhost' IDENTIFIED BY 'suasenha'; // Cria o usuário glpi com acesso apenas pelo localhost.

mysql >GRANT ALL PRIVILEGES ON glpi.* TO 'glpi'@'localhost'; // Determina todos os privilégios de acesso e operações ao banco de dados.

mysql >GRANT SELECT ON `mysql`.`time_zone_name` TO 'glpi'@'localhost';

mysql > FLUSH PRIVILEGES; // Salva as alterações.

mysql > EXIT; // Sai do modo mysql.

3. Instalação do GLPI

cd /var/www/html
wget https://github.com/glpi-project/glpi/releases/download/11.0.4/glpi-11.0.4.tgz
tar -xvzf glpi-11.0.4.tgz
chown www-data:www-data glpi -R
chmod 777 glpi -R

3.1. Configurar Servidor Web

3.2. Criação do arquivo Virtual Host glpi.conf

vi /etc/apache2/sites-available/glpi.conf

<VirtualHost *:80>
    ServerName yourglpi.yourdomain.com
    # Specify the server's hostname
    DocumentRoot /var/www/html/glpi/public
    # The directory where the website's files are located
    # Start of a Directory directive for the website's directory
    <Directory /var/www/html/glpi/public>
        Require all granted
        # Allow all access to this directory
        RewriteEngine On
        # Enable the Apache rewrite engine
        # Ensure authorization headers are passed to PHP.
        # Some Apache configurations may filter them and break usage of API, CalDAV, ...
        RewriteCond %{HTTP:Authorization} ^(.+)$
        RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
        # Redirect all requests to GLPI router, unless the file exists.
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteRule ^(.*)$ index.php [QSA,L]
    </Directory>
    # End of the Directory directive for /var/www/glpi/public
</VirtualHost>

Nome do servidor: se você tiver um URL público, pode digitá-lo aqui.
DocumentRoot: se você for armazenar GLPI em uma página diferente, altere-o também.

Após a criação do arquivo de host virtual, você deve desativar a configuração padrão do Apache, ativar o módulo de reescrita e recarregar o novo arquivo de host virtual.

a2dissite 000-default.conf  //Desativar o site padrão do Apache
a2enmod rewrite //Ativar o módulo de reescrita
a2ensite glpi.conf //Ativar as novas configurações de host virtual do Apache para sua instância GLPI
systemctl restart apache2 //Reiniciar o serviço do apache2

3.3. Configuração do arquivo PHP.ini

Abra o arquivo php.ini
vi /etc/php/8.3/apache2/php.ini

3.3.1. Altere os seguintes parâmetros.

upload_max_filesize = 20M //O tamanho máximo para arquivos enviados é de 20 megabytes.

post_max_size = 20M //O tamanho máximo para dados POST (por exemplo, envios de formulários) também está definido em 20 megabytes.

max_execution_time = 60 //O tempo máximo de execução de um script PHP está definido em 60 segundos.

max_input_vars = 5000 //O número máximo de variáveis ​​de entrada (por exemplo, campos de formulário) que um script pode aceitar é 5000.

memory_limit = 256M //A quantidade máxima de memória que um único script PHP pode usar é de 256 megabytes.

session.cookie_httponly = On //Define o atributo "HttpOnly" para cookies de sessão.

date.timezone = America/Recife //Define o fuso horário padrão do PHP para o seu fuso horário.

Para adicionar seu fuso horário, consulte a lista oficial de fusos horários suportados pelo PHP.

4. Acesso ao GLPI

Após a instalação e configuração das dependências, a instalação pode continuar em um navegador da web com acesso a este mesmo servidor. Abra um navegador da web e digite o registro DNS que você criou para este servidor.