Modifiqué mi instalación de Debian 9 (Apache 2.4.25) para permitir la compatibilidad con HTTP/2.
Lo verifiqué con éxito en línea y las páginas sirven , pero el problema radica en la redirección realizada en .htaccess para mapear, por ejemplo, site.com/index.php/brands/mybrand a una URL agradable (site.com/brands /mi marca). Simplemente no sucede. Esta es una configuración de Codeigniter.
a2dismod php7.2 y mpm_prefork ) y habilito un módulo mpm ( a2enmod mpm_event , pero también probé mpm_worker ) que admite HTTP/2.¿Se invalida el mod_rewrite.c condicional a continuación al cargar el módulo mpm_worker? Si es así, ¿cómo lo reemplazo?
EDITAR: un registro detallado me muestra este error: AH01071: se obtuvo el error 'Script principal desconocido\n', referente: https://sitename.com/brands/
Mi .htaccess (en el directorio de marcas donde reside index.php) que funciona bien con la configuración anterior es:
<IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php/$1 [L] RewriteCond %{HTTPS} !on RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} </IfModule> <IfModule mod_headers.c> <FilesMatch "\.(ttf|ttc|otf|eot|woff|font.css|css)$"> Header set Access-Control-Allow-Origin "*" </FilesMatch> </IfModule> IndexOptions +Charset=UTF-8Mi /etc/apache2/sites-enabled/default-ssl.conf contenido relevante incluye:
<VirtualHost _default_:443> # even without enabling here h2c or h2 I get the error Protocols http/1.1 <Directory "/var/www/html"> Options Indexes FollowSymLinks MultiViews AllowOverride All # since apache 2.4 Require all granted </Directory> </VirtualHost>Nota: Otros comandos que ejecuté anteriormente para habilitar los módulos adicionales requeridos son los siguientes. No tuve que tocar nada de esto para volver a una configuración funcional (no HTTP/2):
apt-get install php7.2-fpm a2enmod proxy_fcgi setenvif a2enconf php7.2-fpmEl problema se debió a una redirección interna. Está arreglado ahora.
No has configurado PHP-FPM correctamente. Deshabilite esa configuración de php-fpm diciendo a2disconf php7.2-fpm . Y agregue lo siguiente en el archivo httpd.conf, esto debería funcionar:
<FilesMatch "\.php$"> SetHandler "proxy:fcgi://localhost:9000" </FilesMatch> ProxyErrorOverride OnReinicie Apache y PHP-FPM (probablemente no sea necesario reiniciar PHP-FPM, pero Apache debe reiniciarse). Habilite HTTP/2 ahora, probablemente debería funcionar.
El OP tuvo este problema debido a alguna redirección en la configuración.