Я работаю с Mac, встроенным в Apache, и все было просто отлично, ДО ТОГО, как что-то пошло не так. Думаю, это файл .hosts.
http: // localhost результаты с "Работает!" сообщение, а / [имя папки] не может быть найдено. Однако 127.0.0.1 работает нормально, переводит меня в / Sites с моим именем пользователя.
Мой файл .hosts выглядит так:
127.0.0.1 localhost
255.255.255.255 broadcasthost
Я не очень хорошо знаком с тем, как работает Apache; что я сделал не так? Где мне искать?
Страница «Это работает» - это apache Vhost по умолчанию. Если вы получаете это, это не имеет ничего общего с файлом hosts.
Потребуется дополнительная информация об URL-адресе, к которому вы пытаетесь получить доступ, и о том, что вы ожидаете.
Смотреть в /etc/apache2/httpd.conf
и посмотрим, если httpd-userdir.conf
Включено:
# User home directories
Include /private/etc/apache2/extra/httpd-userdir.conf
Ты пробовала http://localhost/~[username]
где [username]
это пользователь, под которым вы сейчас вошли в систему?
Apache обрабатывает IP-адреса иначе, чем разрешенные «именные» адреса. IP-адрес переходит на любой порт, который прослушивает, и успешно переходит оттуда. Такие вещи, как «localhost», обрабатываются разделом «VirtualHost» файла конфигурации, где Apache сообщает, какая папка является «корневой» папкой для сервера, описанного этим ИМЯ.
Итак, если вы с удовольствием использовали «localhost», а теперь он не работает, я бы посмотрел, не изменилось ли что-то в разделе VirtualHost вашего файла httpd.conf.
Хотя установка apache в моем macports работала нормально, что-то недавно изменилось, и apache по умолчанию для OS X вернулся в игру сегодня. Итак, я получил то же самое неожиданное: «Это работает!» что ты сделал.
Исправление заключалось в выгрузке демона apache из файла launchd.
sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist
Возможно, вам нужно указать порт; вы можете найти нужный в Системных настройках.
В качестве безболезненной альтернативы вы можете загрузить MAMP для использования вместо встроенного в OS X Apache.
В Mac это единственное предложение, записанное в index.html, как показано ниже.
cat /Library/WebServer/Documents/index.html.en
Итак, это ожидаемый результат.
ХОРОШО. Файл Httpd.conf. ServerName должно быть 127.0.0.1.1 - по крайней мере, если вы пытаетесь использовать apache для обслуживания приложения ruby on rails. Надеюсь это поможет