У меня есть три виртуальных хоста, работающие в apache2 на моем личном Macintosh, работающем под управлением OS X Mavericks, и я впал в замешательство. Они настроены в моем файле httpd-vhosts.conf следующим образом:
<VirtualHost *:80>
DocumentRoot "/Library/WebServer/Documents"
ServerName localhost
ServerAlias localhost
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/Library/WebServer/Documents/dev1"
ServerName dev1.local
ServerAlias www.dev1.local
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/Library/WebServer/Documents/dev2"
ServerName dev2.local
ServerAlias www.dev2.local
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/Library/WebServer/Documents/dev3”
ServerName dev3.local
ServerAlias www.dev3.local
</VirtualHost>
Примечание. Первая запись позволяет мне ввести «localhost» и загрузить его так, как вы ожидаете, без запуска Virtual Hosts.
dev1 и dev2 работают нормально, но я получаю сообщение об ошибке 404, в котором говорится: «Запрошенный URL / не найден на этом сервере». когда я пытаюсь загрузить dev3 на локальную машину. Все три папки Dev имеют одинаковые права доступа. Я проверил имена. Когда я проверил error_log, я нашел это:
[Пт, 24 января 12:55:07 2014] [ошибка] [клиент 127.0.0.1] Файл не существует: / Library / WebServer / Documents / dev3 \ xe2 \ x80 \ x9d
Кто-нибудь знает, почему Apache добавляет «\ xe2 \ x80 \ x9d» в конец пути к папке, или почему dev3 не загружается? (Я подозреваю, что эти случайно добавленные символы являются причинами). Любой ввод приветствуется! Спасибо за чтение!
источник
makes a "Not Bad" face and face palms hand through head
Теперь посмотри, в этом так много смысла. Это происходит со мной и с HTML-формами ... СПАСИБО! Я целый час чесал голову об этом. Как этот символ печатается по сравнению с обычной кавычкой @DanFromGermany?^M
в конце или в конце строки, это из-за неправильного окончания строки (\r\n
chars) dos / unix / mac (есть инструменты: dos2unix и т. Д.), На всякий случай; DВы пропустили
VirtualHost
настройку.NG:
DocumentRoot "/Library/WebServer/Documents/dev2"
ХОРОШО:
DocumentRoot /Library/WebServer/Documents/dev2
источник
DocumentRoot "/ Библиотека / WebServer / Документы"
должен быть
DocumentRoot / Библиотека / WebServer / Документы
нет "" в DocumentRoot
источник