MAMP: Apache не запускается, когда httpd уже запущен

У меня тут странная проблема. Я устанавливал mcrypt на свой Mac под управлением yosemite и MAMP 3.0, PHP 5.6.1.

Расширение вроде успешно установилось. Но когда я перезапустил Mac, MAMP не смог запустить Apache, а mysql работал очень хорошо.

Я узнал, что порт 80 заблокирован. httpd уже использует его. Я пытался перезапустить несколько раз, но он уже используется. Я очень мало знаю об использовании apache httpd для запуска сервера.

Я могу запустить apache на другом порту (8080, здесь), но я не хочу каждый раз запускать его, вводя: 8080 при тестировании на локальном хосте.

Любая помощь действительно ценится,


person Kiran P.    schedule 06.06.2015    source источник
comment
Запустите команду lsof -i TCP:80, чтобы узнать, что использует порт 80.   -  person umka    schedule 06.06.2015
comment
@umka Это установленный apache, который OSX автоматически возрождает при загрузке и в любое время после его смерти. Смотрите ответ ниже.   -  person YvesLeBorg    schedule 06.06.2015


Ответы (1)


Это потому, что OSX автоматически запускает собственную установленную версию apache. Единственный способ избавиться от него: после загрузки в оболочке

sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist

edit : приведенная выше команда выгрузки навсегда предотвращает повторное появление демона. После перезагрузки, если вы

DarkMax:~ yvesleborg$ sudo launchctl unload /System/Library/LaunchDaemons/org.apache.httpd.plist
Password:******

вы должны получить:

/System/Library/LaunchDaemons/org.apache.httpd.plist: Could not find specified service

вам следует любой ценой избегать изменения содержимого папки /System/Library/LaunchDaemons вне команды launchctl.

person YvesLeBorg    schedule 06.06.2015
comment
да это работает! Мой MAMP работал нормально, пока я не установил mcrypt с brew. Не знаю, где я коснулся apache. - person Kiran P.; 06.06.2015
comment
Нет ли возможности удалить эту запись? Я пытался удалить /System/Library/LaunchDaemons/org.apache.httpd.plist, но OS X не позволяет мне это сделать. Я даже пытался загрузиться в однопользовательском режиме, но все равно выдавал ошибку, что это системный файл, и я не могу его rm, chmod или chown. Я попробовал то же самое, что и root, включив его из служб каталогов, и все равно получил тот же результат. - person Saifur Rahman Mohsin; 24.08.2015
comment
@SaifurRahmanMohsin: эта команда должна быть окончательной. Я отредактировал свой ответ, чтобы показать состояние «после перезагрузки». - person YvesLeBorg; 24.08.2015
comment
О, это хорошая новость. Я еще не перезагружал свою систему, поэтому я не заметил окончательного эффекта команды. Большое спасибо! - person Saifur Rahman Mohsin; 24.08.2015
comment
Именно это я и сделал, и на самом деле это просто сработало, я не знаю, как я дошел до состояния, когда мне нужно было это сделать. - person etiennejcharles; 26.01.2018