Как заставить Apache2 использовать / отвечать только на IP-адрес

У меня есть сервер apache2, который находится за брандмауэром. Внешний адрес 24.89.xxx.xxx, а внутренний адрес 10.10.58.1

Имя хоста сервера - "myhost". У меня нет записи DNS для адреса 24.89.xxx.xxx, потому что он еще не запущен. Доменное имя, которое будет разрешено, в данный момент используется для существующего сайта.

Я бы хотел, чтобы команда веб-разработчиков могла получить доступ к сайту через адрес 24.89.xxx.xxx. Однако всякий раз, когда они просматривают сайт, во все URL-адреса вставляется локальное имя хоста.

Так, <a href="index.php?id=9">Link</a> производит URL-адрес http://myhost/index.php?id=9 Тем не менее, я хотел бы получить URL http://24.89.xxx.xxx/index.php?id=9

Apache установлен на Debian Lenny. Я использую сайт по умолчанию. Я пробовал различные варианты установки NamedVirtualHost на IP, ServerName на IP, UseCanonicalName off, VirualHost и т. Д. Все, что я делаю, не производит никаких изменений. Да, я перезагружаю конфиг каждый раз.

Я также попытался отключить брандмауэр, и я получил тот же результат. Я также сделал несколько изменений в файле /etc/hosts.

/ и т.д. / хосты:

127.0.0.1       localhost
10.10.58.1      myhost
24.89.xxx.xxx   www.inusedomain.org

2 ответа

Решение

Читая более внимательно, я думаю, что это может быть проблема php. Как правило, вам нужно установить своего рода "базовый URL" в конфигурации для веб-сайта, чтобы php знал, как создать все ссылки ("Перезаписать URL-адреса"). Найдите файл config.php или что-то подобное в корневом каталоге сайта.

Если у вас плохие разработчики, это может быть не в одной переменной, а везде. Чтобы найти это или, возможно, найти его в одном месте, используйте grep -Ri --include='*.php*' 'localhost' *, изменяя localhost на то, что сейчас перезаписывается.

Не полный ответ:
Я не совсем уверен, но мне кажется, что я помню, что привязка виртуального хоста к определенному IP или изменение директивы listen требовали полного перезапуска, а не просто постепенного перезапуска или перезагрузки конфигурации.

Я могу гарантировать, что проблема не в Apache. Вы должны смотреть на то, что производит ваш HTML-контент... т.е. php и т. д.

Другие вопросы по тегам