Gentoo et CalculateLinux : Mise à jour de apache 2.2 en 2.4
Bonjour à tous,
Cette journée est semée d'embûches !
J'ai eu droit à une mise à jour de Apache2.2 vers 2.4, et là c'est le drame !
apache ne démarrait plus !
Pour corriger cela, il faut réémerger php
Si vous êtes comme moi et que dans tous les virtualhosts, vous avez des anciennes instructions "Allow from...", il faut les enlever :
et
Et les remplacer par les nouvelles
et
Si on a une config assez tordue du style
On adapte ainsi :
On relance apache et le tour est (presque) joué :
J'ai enlevé dans le fichier concerné la ligne NameVirtualHost.
Cette journée est semée d'embûches !
J'ai eu droit à une mise à jour de Apache2.2 vers 2.4, et là c'est le drame !
apache ne démarrait plus !
Code BASH :
/etc/init.d/apache2 start apache2 | * apache2 has detected an error in your setup: apache2 |AH00548: NameVirtualHost has no effect and will be removed in the next release /etc/apache2/vhosts.d/00_default_vhost.conf:29 apache2 |AH00112: Warning: DocumentRoot [/var/www/localhost/htdocs/dev/] does not exist apache2 |AH00526: Syntax error on line 11 of /etc/apache2/vhosts.d/dev.linuxtricks.conf: apache2 |Invalid command 'Order', perhaps misspelled or defined by a module not included in the server configuration apache2 | * apache2 has detected an error in your setup: apache2 |apache2: Syntax error on line 147 of /etc/apache2/httpd.conf: Syntax error on line 14 of /etc/apache2/modules.d/70_mod_php5.conf: Cannot load modules/libphp5.so into server: /usr/lib64/apache2/modules/libphp5.so: undefined symbol: unixd_config apache2 | * ERROR: apache2 failed to star
Pour corriger cela, il faut réémerger php
Code BASH :
emerge -1av dev-lang/php
Si vous êtes comme moi et que dans tous les virtualhosts, vous avez des anciennes instructions "Allow from...", il faut les enlever :
Code BASH :
Order deny,allow Deny from all
et
Code BASH :
Order allow,deny Allow from all
Et les remplacer par les nouvelles
Code BASH :
Require all denied
et
Code BASH :
Require all granted
Si on a une config assez tordue du style
Code BASH :
Order Deny,Allow Deny from all Allow from linuxtricks.fr
On adapte ainsi :
Code BASH :
Require host example.org
On relance apache et le tour est (presque) joué :
Code BASH :
/etc/init.d/apache2 start apache2 | * Starting apache2 ... apache2 |AH00548: NameVirtualHost has no effect and will be removed in the next release /etc/apache2/vhosts.d/00_default_vhost.conf:29
J'ai enlevé dans le fichier concerné la ligne NameVirtualHost.