Попытайтесь обновить/понизить свое ядро. Несколько проблем с планировщиком на различных ядрах:
Задайте для ServerName значение localhost следующим образом:
ServerName localhost
Затем откройте сервер через
http://localhost
Не имеет значения, какой у вас IP.
Сначала вы настраиваете VirtualHost следующим образом:
<VirtualHost *:80>
DocumentRoot "D:/Projects"
ServerName projecthost
</VirtualHost>
Затем в Windows вы всегда можете установить IP-адрес, на который будет указывать «projecthost». Отредактируйте файл C: \ Windows \ system32 \ drivers \ etc \ hosts и добавьте:
projecthost 127.0.0.1
или
projecthost 192.168.11.74
Затем получите доступ к серверу через
http://projecthost
Есть ли у вас что-нибудь еще (возможно, другой виртуальный сервер), которое прослушивает 127.0.0.1 ??
Если нет,
Что делать, если вы попробуете использовать командный файл, который изменяет файл хоста (C: \ Windows \ system32 \ drivers \ etc \ hosts), когда вы находитесь вне сети, а затем другой, когда вы внутри ?
Настроен ли он так, что, когда вы находитесь за пределами корпоративной сети, он добавляет эту строку:
192.168.11.74 127.0.0.1
А затем еще одну, чтобы закомментировать ее, когда вы входите в корпоративную сеть, вот так:
#192.168.11.74 127.0.0.1
Или просто удаление строки также должно работать.
Таким образом можно сохранить конфигурацию apache нетронутой и просто внести изменения на своем ноутбуке.
Ура!
Эту проблему можно обойти с помощью службы динамического DNS, которая позволяет использовать частное адресное пространство. (Я знаю, например, что это делает dyn.com, но у меня нет того или иного мнения об их услугах)
Например, вы должны использовать:
ServerName myapp-whatever.dyndns.org
в вашем apache conf и запустить клиент обновления, который поддерживает использование адрес вашего интерфейса (не обнаруженный вами общедоступный IP-адрес, как это делают многие, но он не работает для вас)
Если вы собираетесь использовать только один виртуальный хост, вы можете использовать виртуальный хост apache по умолчанию. См .: Виртуальный хост Apache по умолчанию
Если вы размещаете несколько виртуальных хостов, edvinas предоставит ответ. Создайте имя для каждого проекта и создайте запись в файле hosts с этим именем, указывающим на 127.0.0.1, который всегда доступен.
This doesn't work because the 'ServerName' parameter to Apache says effectively: If you get a request, make sure that the URL specified by the user has 192.168.11.74 as the destination. When you are outside of your company network and not using that IP address (because you were assigned another), then your request will either:
If you only need the one web site (likely at this stage), I would recommend removing the ServerName line because it doesn't help you (as recommended by Manuel Sousa) and using 127.0.0.1 locally, and 192.168.11.74 when you are on your work network.
An example of a sub-optimal approach that might achieve the stated goal, you can try to configure your network card to have an additional IP address (192.168.11.74) while you are not at work. Challenges:
Again, I think this approach is a bad idea, but you can judge for yourself: http://social.technet.microsoft.com/Forums/windows/en-US/691d5aa4-09a3-4390-856a-26c10d773a3b/how-to-assign-differentmultiple-ip-address-to-nic-network-card?forum=w7itpronetworking