Мой веб-сервер Mac не будет работать после обновления до Yosemite. Когда я печатаю apachectl
в терминале, я получаю это:
httpd: Syntax error on line 527 of /private/etc/apache2/httpd.conf: Syntax error on line 8 of /private/etc/apache2/other/+php-osx.conf: Cannot load /usr/local/php5/libphp5.so into server: dlopen(/usr/local/php5/libphp5.so, 10): Symbol not found: _unixd_config\n Referenced from: /usr/local/php5/libphp5.so\n Expected in: /usr/sbin/httpd\n in /usr/local/php5/libphp5.so
Если я набираю sudo apachectl [re]start
ничего не происходит, как будто он запущен, и я набираю его снова, он говорит, что он уже запущен. Кроме того, у меня установлена панель предпочтений общего доступа к веб-сайту ( http://clickontyler.com/web-sharing/ ), и когда я переключаю переключатель с «Выкл. На Вкл.», Он все равно говорит, что он выключен, даже если переключатель находится в положении «Вкл.». ,
Какие файлы вы, ребята, хотите / должны увидеть? Действительно нужно исправить это как можно скорее.
источник
Проблема возникает из-за того, что Yosemite устанавливает последнюю версию Apache (2.4), тогда как более ранние версии Mac OS X использовали Apache версии 2.2
Из ошибки видно, что вы не использовали стандартную версию PHP, предоставленную Apple, а другую версию, предоставленную liip.ch. Удаление знака #, как предложено выше Nuttyx, загрузит версию php для Apple (5.5.14). Если вы хотите продолжить запуск версии, предоставленной liip, вам нужно переустановить ее, чтобы она правильно загружалась в Apache 2.4. Смотрите подробное объяснение здесь: ( http://blog.liip.ch/archive/2014/06/11/php-osx-available-for-os-x-10-10-yosemite.html )
NB. Если вы используете виртуальные хосты, вам, вероятно, потребуется несколько изменить файлы конфигурации. В частности, вам нужно будет изменить следующее:
2.2 конфигурация:
Конфигурация 2.4:
источник
Кажется , что вы можете исправить это путем удаления
#
на самого начало следующей строки в/etc/apache2/httpd.conf
файле:источник
Запуск sudo apachectl без аргументов показывает проблему в файлах conf. В моем случае обновление php исправило это.
После этого Apache снова запустился, но мне пришлось перенастроить vhosts.
источник
Несмотря на то, что на вышеупомянутый вопрос был дан ответ, существует другая вероятность такой же ошибки, например:
Это может произойти, если вы создали символическую ссылку, на которую ссылается указанное выше имя и она не найдена. Чтобы решить, создайте символьную ссылку, указав абсолютный путь для фактического файла и такой же для имени файла символической ссылки.
источник