Después de la instalación de MacOS High Sierra, localhost falla y Apache tiene errores de sintaxis

3

Después de actualizar a MacOS High Sierra, no he podido acceder a mi host local. Intenté reiniciar Apache, pero todavía no funcionó. Así que hice apachectl configtest y obtuve este mensaje de error:

  

enlace

La línea 544 de mi archivo httpd.conf es
Include /private/etc/apache2/other/*.conf

El + php-osx.conf es un alias de entropy-php.conf, y la línea 8 de ese archivo es
LoadModule php5_module /usr/local/php5/libphp5.so

Las líneas restantes de entropy-php.conf son: LoadModule php5_module /usr/local/php5/libphp5.so

<IfModule mod_php5.c>

    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps

    <IfModule mod_dir.c>
        DirectoryIndex index.html index.php
    </IfModule>

</IfModule>

Estoy usando Apache / 2.4.28 (Unix) y PHP 5.6.30.

Todo funcionaba bien hasta la actualización. He buscado en línea alguna solución a este problema, pero sin éxito. Alguien publicó una pregunta similar aquí hace un par de años con respecto al mismo error de sintaxis, sin embargo, no proporcionó suficientes detalles ni ningún seguimiento con respecto a su configuración, y no se pudo ofrecer ninguna solución: Mac apache no funciona: errores de configuración apachectl

    
pregunta Paul Brady 22.11.2017 - 23:05

1 respuesta

3

Aquí se instaló un PHP de terceros (antiguo) probablemente de entropy.ch en / local / usr / bin /. Sierra httpd.conf se modificó para trabajar con los diferentes PHP (y hosts virtuales).

Al actualizar a macOS a High Sierra, se realizó una copia de seguridad de Sierra httpd.conf en httpd.conf.sierra, se instaló un nuevo High Sierra httpd.conf y se ganó el control, pero no funcionará con el PHP5 personalizado.

Después de hacer una copia de seguridad de High Sierra httpd.conf a httpd.conf.high_sierra:

sudo mv /private/etc/apache2/httpd.conf /private/etc/apache2/httpd.conf.high_sierra 

reactivando el httpd.conf.sierra:

sudo cp /private/etc/apache2/httpd.conf.sierra /private/etc/apache2/httpd.conf

descomentar la línea httpd.conf

#LoadModule php5_module libexec/apache2/libphp5.so

y cambiando el número de versión de 5 a 7 para que lea:

LoadModule php7_module libexec/apache2/libphp7.so


renombrando custom / local / usr / bin / php a php5:

sudo mv /local/usr/bin/php /local/usr/bin/php5

reemplazando el enlace /private/etc/apache2/other/+php-osx.conf (enlazando a /usr/local/php5/entropy-php.conf) con el valor predeterminado High Sierra / private / etc / apache2 / otro / php7.conf

y al eliminar cualquier referencia al PHP5 personalizado, apachectl configtest estaba bien y Apache funcionó nuevamente, ahora con el PHP7 de Apple.

    
respondido por el klanomath 23.11.2017 - 03:21

Lea otras preguntas en las etiquetas