Я новичок в веб-разработке ... и запуск WAMPServer - это барьер, который не может решить ни одна из проблем Google.

Когда я устанавливаю WAMPServer, он работает нормально. Когда я пытаюсь добавить локальные доменные имена, это идет не так. Кто-нибудь может сказать мне, почему?

Вещи, которые я попробовал.

В

C:/Windows/System32/ Drivers / и т.д. / хосты

я добавил

'127.0.0.1 my.testsite'

Затем в

C:/wamp/bin/apache/Apache2.2.22/conf/httpd.conf

Я удалил # из

'# Включить conf/extra/httpd-vhosts.conf'

Затем в C:/wamp/bin/apache/Apache2.2.22/conf/extra/httpd-vhosts.conf я добавил

<Каталог C:/WAMPprojects>
Заказать Запретить, Разрешить
Разрешить от всех
</Directory>

а также

<VirtualHost *:80>
DocumentRoot «C:/WAMPprojects/Hermes»
ServerName my.testsite
</VirtualHost>

Когда я ввожу my.testsite в адресную строку, я ожидаю увидеть содержимое страницы index.html, которая находится в папке Hermes.

После новой установки WAMP, где значок на панели задач становится зеленым, я внес эти изменения, и каждый раз, когда я перезагружаю сервер WAMP, он останавливается на оранжевом.

Поэтому я также попытался:

  • Выключение скайпа
  • Измените настройки Skype, чтобы он не прослушивал порт 80 (Инструменты> Параметры> Дополнительно> Соединение> Используйте порты 80 и 443 в качестве альтернативы для входящих подключений. Снимите галочку).
  • Проверка, что больше ничего не слушает в порту 80
  • Меняем порт на 8080
  • Смена порта на другой номер
  • Добавление ::1 к хостам

Я не могу определить, что происходит в журнале ошибок Apache.

Я на Windows XP (SP3) и Apache 2.2.22 Это случай несовместимости или это можно исправить?

Большое спасибо заранее, если кто-нибудь может дать мне подсказку об этом - я застрял в течение нескольких месяцев.

3 ответа3

1

Расширяя мой комментарий:

Реальный ключ здесь заключается в том, что когда вы перезапускаете Apache после изменения ваших conf-файлов, ваш значок состояния не становится зеленым - это, скорее всего, связано с проблемой ваших файлов конфигурации (то есть вам не нужно было бы возиться с Skype , порты и т. д.) - усилия по отладке должны быть сосредоточены на файлах конфигурации Apache. Я не уверен, где ошибки с файлами conf регистрируются в WAMP, но я бы потратил время, чтобы выяснить это сейчас на вашем месте. , ,

Я думаю, проблема в том, что разделы <directory> не могут быть верхнего уровня во включенных файлах conf. Как указано в документации, их контекст - это конфигурация сервера или виртуальный хост, то есть он должен находиться либо в основном файле конфигурации (например, httpd.conf), либо в определении <VirtualHost> . Попробуйте что-то вроде этого:

< VirtualHost *:80>
    DocumentRoot “C:/WAMPprojects/Hermes”
    ServerName my.testsite
    <Directory C:/WAMPprojects>
        Order Deny,Allow
        Allow from all
    </Directory>
< /VirtualHost>
0

Вы пытались добавить ServerAlias, например:

<VirtualHost *:80>
    DocumentRoot "C:/WAMPprojects/Hermes"
    ServerName my.testsite
    ServerAlias my.testsite
    <Directory "C:/WAMPprojects/Hermes">
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

?

-1

Вот некоторые подробности о том, что происходит, когда ваш браузер отправляет запрос на сервер, который должен заполнить детали:

  • Вы вводите http://whwhat.invalid в адресной строке
  • Браузер использует системный распознаватель для выдачи DNS-запроса на преобразование what.invalid в IP-адрес
  • Браузер отправляет HTTP-запрос GET к IP-адресу, возвращенному этим DNS-запросом.
  • В заголовке этого HTTP-запроса GET ваш браузер помещает строку «Host:», копируя имя домена, которое вы использовали, то есть «Host: what.invalid»
  • Apache получает запрос, ЕСЛИ IP-адрес был правильным.
  • Apache проверяет HTTP-заголовок на наличие строк «Host:» и использует правильный vhost, если такая конфигурация существует.

Итак, часть головоломки, которую вам не хватает, - это DNS-сервер, желающий взять имя вашего сайта и вернуть IP, на котором живет ваш сервер Apache, который в данный момент является локальным.

Вы можете запустить свой собственный локальный DNS-сервер или просто отказаться от vhosts и использовать http://localhost или http://127.0.0.1 в своем браузере.

Просто перечитайте свой вопрос более внимательно и увидите, что вы использовали файл hosts . Попробуйте my.testsite и посмотрите, возвращается ли 127.0.0.1 ping. Вы , возможно , потребуется удалить все существующие ссылки localhost в файле hosts (Между прочим, я только что попробовал ping -4 localhost в системе Windows, на которой я работаю, и это вызвало пинг до 127.0.0.1 ... так что это может быть что-то еще ...)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .