Назад | Перейти на главную страницу

Как я могу использовать mod_proxy, чтобы заставить Apache использовать настраиваемый порт для определенного URL-адреса?

У меня один IP-адрес, скажем, 10.10.55.55

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

Поэтому вместо того, чтобы говорить mydev.net:8200, я хотел бы сказать mydev.net (чтобы попасть в docroot) и указать порт. Как я могу это сделать с Apache 2?

<VirtualHost *:8200>
        ServerAdmin me@mydev.net
        DocumentRoot /var/www/html-8200/
        ServerName mydev.net
        ServerAlias www.mydev.net
        AllowEncodedSlashes On    
        RewriteEngine on
        RewriteOptions Inherit
</VirtualHost>

http://mydev.net => http://mydev.net:8200

К сожалению, это невозможно.

Порт, к которому подключается клиент, определяется клиентом, а не сервером - Apache не имеет возможности изменить это поведение в браузере клиента. Порт 80 всегда подразумевается для http://, а порт 443 всегда является подразумеваемым портом для https://.

Ты мог 30x перенаправить клиента на :8200или обратные прокси-соединения от 80 до 8200 ... но эти подходы, вероятно, будут бессмысленными, в зависимости от того, что вы пытаетесь выполнить.

Вы можете использовать mod_alias или mod_proxy и настроить что-то вроде:

http://mydev.net/somepath

какой apache будет указывать на другой docroot

Alias /somepath "/usr/local/www/somepath"

пока http://mydev.net все равно укажет на обычный docroot

или, если служба, работающая на порту 8200, не является apache, а какой-то другой службой, к которой вы снова хотите получить доступ через порт по умолчанию, вы можете использовать mod_proxy для обратного прокси-сервера запросов с порта 80 на 8200

Если вы хотите, чтобы один и тот же домен указывал на что-то отличное только от вашего компьютера (например, вы хотите протестировать кодовую базу разработки своего веб-сайта, но на реальном домене), единственный реальный выбор - настроить вторую версию сайта. на другом IP-адресе, а затем используйте локальный хозяева файл на клиентском компьютере, чтобы неверно перенаправить доменное имя второго IP-адреса.