Подтвердить что ты не робот

Apache не запускается в MAMP (но работает MySQL) в OSX

У меня был MAMP, работающий в течение нескольких месяцев и недавно установленный PostgreSQL. Он также рекомендовал установить Apache, что я сделал, чтобы убедиться, что PostgreSQL работал. Затем я удалил PostgreSQL и сборку apache и попытался перезапустить MAMP. Он активировал базу данных MySQL (зеленый свет), но Apache не запускался. Я удалил и переустановил MAMP только для решения той же проблемы.

Apache, похоже, не регистрирует никаких ошибок в папке MAMP, поэтому без каких-либо ошибок сообщать, что я боюсь, с чего начать его исправление. Я надеюсь, что это связано с тем, что я установил другую версию (и удалил ее), которая вызвала проблему, но я слишком неопытен, чтобы знать, что я сделал.

Где я могу найти какие-либо ошибки, если не в папке MAMP? Не в:

  • /Applications/MAMP/Library/журналы
  • /Applications/MAMP/бен/журналы
4b9b3361

Ответ 1

Остановка Apache решила эту проблему для меня, используя командную строку:

$ sudo apachectl stop

Ответ 2

Для тех из вас, кто обновляется до Йосемити, кажется, есть ошибка, которую я действительно не понимаю, но ее легко фиксировать как размещенную в их учетной записи Twitter.

Обходной путь для ошибки 10.10 Preview 5: переименуйте файл "envvars", расположенный в "/Applications/MAMP/Library/bin" в "_envvars" (@mamp_en)

Ответ 3

У меня была аналогичная проблема, и я мог решить ее, запустив в командной строке apachectl, включенный в MAMP:

$ /Applications/MAMP/Library/bin/apachectl start

что даст

Syntax error on line 427 of /Applications/MAMP/conf/apache/httpd.conf:
Invalid command '\xef\xbf\xbc#AllowOverride', perhaps misspelled or defined by a module not included in the server configuration

Это сообщение об ошибке нигде не было, а не в любом файле журнала или системной консоли. (Оказывается, я скопировал строку из файла документации, который скопировал некоторые специальные символы, которые не были предназначены для моей системы, - как легко найти это!)

Это для MAMP 2.0.1, возможно, он лучше справляется с новыми версиями.

Ответ 4

Возможно, это потому, что исходный apache включен. Вы пытались увидеть статус? Вы можете попробовать эту команду, чтобы остановить ее "apachectl status", а затем перезапустить мам и посмотреть, работает ли она.

Ответ 5

Измените рекомендуемый порт Apache: порт 80 на порт 81.

Ответ 6

Я знаю, что это старо, но в случае, если кто-то другой сталкивается с этим. У меня была опечатка в моем файле виртуального хоста (/Applications/MAMP/conf/apache/extra/httpd-vhosts.conf), из-за чего Apache не запускался. Только когда я вручную попытался запустить версию Apache Apache из командной строки (/Applications/MAMP/bin/startApache.sh), я увидел ошибку и смог ее исправить.

Ответ 7

В моем случае был неправильный сертификат ssl на vhost. Чтобы проверить, просто временно отключите ssl от всего вашего ssl-хоста и посмотрите, начнется ли он. ПРИМЕЧАНИЕ: даже если ssl vhost не установлен.

Ответ 8

У меня была та же проблема. После большого разочарования в связи с отсутствием описательного сообщения об ошибке, я понял, что могу проверить журнал "Все сообщения" в разделе Приложения/Инструменты/Системные сообщения (или какой-либо аналогичный путь, как я только что перевел с моего язык здесь). Там я нашел объяснение, которое в моем случае означало, что ссылка на библиотеку была нарушена (возможно, из-за удаления postgres). Я исправил это, воссоздав ссылку. В моем случае это означало, что я должен был запустить следующую команду в терминале:

sudo ln -s /usr/lib/libpq.5.3.dylib /usr/lib/libpq.5.dylib

и теперь он работает!

Ответ 9

Если в какой-то момент он работает нормально, я думаю, что что-то еще в вашей сети в настоящее время использует тот же порт для чего-то другого.

У меня тоже была эта проблема: в моем случае я изменил порт MAMP Apache по умолчанию от 8888 до 80. Он работал нормально, пока я не установил веб-сервер на другой машине в своей сети и не изменил /etc/hosts на моей локальной машине для включения нового сервера. Это означало, что порт 80 уже использовался и не удалось запустить MAMP Apache.

Решение заключалось в том, чтобы либо остановить второй веб-сервер в моей сети, либо вернуть MAMP обратно до 8888. Оба подхода работали нормально.

Ответ 10

Командная строка помогает в этой проблеме. как показано ниже,

/Приложения/MAMP/Library/bin/apachectl start

/Приложения/MAMP/Library/bin/apachectl stop

Ответ 11

1) Закройте MAMP

2) Используйте командную строку для запуска:

$ sudo apachectl restart

3) Откройте MAMP и запустите Apache

4) Apache должен начать это время с удачей


Моя ситуация заключалась в том, что когда я использовал запущенную командную строку:

$ sudo apachectl stop

ничего не изменилось. И когда я использовал строку командной строки для запуска:

$ sudo apachectl start

Я получил сообщение

httpd (pid 600) already running

Я попытался перезапустить, и он сработал.

Ответ 12

Чтобы устранить эту проблему, я переустановил PostgreSQL и сборку Apache, которая пришла с ней, затем я снова установил MAMP и MAMP работал нормально.

Ответ 13

Если ваша htdocs (или эквивалентная) папка хранится во внешнем хранилище, возможно, вам придется подключиться к ней (в finder или с помощью cmd + K) до запуска apache.

Ответ 14

У меня была эта проблема, и оказалось, что файл .txt, который не был файлом vhosts, каким-то образом был сохранен в моей папке sites-available, в которую автоматически включался Apache, и ожидал, что каждый файл будет файлом vhosts.

Ответ 15

Я прошел через все сообщения Stackoverflow, но не повезло. Наконец, я наткнулся на это: https://www.speakinginbytes.com/2013/02/mamp-problems/

Иногда Apache устанавливается через MAMP, чтобы открыть определенную папку, и эта папка больше не существует. Если вы просто перейдете к MAMP и измените это с помощью кнопки настроек вы сможете ее исправить.

Это трюк для меня. Надеюсь, это поможет кому-то еще!

Ответ 16

Также убедитесь, что вы не запускаете более старую версию MAMP. Это случилось со мной при использовании прожектора, чтобы найти MAMP. Когда приложение обновляется, оно хранит старые копии в папке "Приложения".