Apache несколько виртуальных хостов на одном и том же IP (разные URL) - PullRequest
2 голосов
/ 05 октября 2011

У меня есть 2 виртуальных хоста (bugzilla и board board) на сервере apache, который находится внутри компьютера с Ubuntu.

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

Я хочу, чтобы пользователь мог написать следующее: http://ip -адрес: порт /bugzilla и для запросов, чтобы перейти к bugzilla и для запросов от http://ip -адрес: порт / обзор , чтобы перейти на доску обзора.

Я попытался обратное проксирование отот первого vhost до второго, но это не сработало.

В файле conf bugzilla используется cgi, а на доске обзора - wsgi.

Есть ли простой способ выполнить вышесказанное?

Заранее спасибо.

Ответы [ 2 ]

3 голосов
/ 26 сентября 2014

Этого можно добиться с помощью директивы Alias ​​.

Директива Alias ​​позволяет хранить документы в локальной файловой системе, отличной от DocumentRoot.URL-адреса с (% -кодированным) путем, начинающимся с URL-пути, будут сопоставлены с локальными файлами, начинающимися с пути-каталога.URL-путь чувствителен к регистру, даже в нечувствительных к регистру файловых системах.

Псевдоним "/ image" "/ ftp / pub / image" Запрос на http://example.com/image/foo.gif вызоветсервер для возврата файла /ftp/pub/image/foo.gif.Только полные сегменты пути сопоставляются, поэтому указанный псевдоним не будет соответствовать запросу для http://example.com/imagefoo.gif. Для более сложного сопоставления с использованием регулярных выражений см. Директиву AliasMatch.

Ваш файл виртуального хоста будетвыглядит так:

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName ip-address:port/bugzilla 
    Alias "/bugz" "var/www/html/bugz"
    Alias "/wow" "var/www/html/wow"    
    DocumentRoot /path/to/yourwebsite  
</VirtualHost>

Достижение цели иметь несколько виртуальных хостов на одном и том же IP-адресе.

GIF его работы

enter image description here

ПРИМЕЧАНИЕ

  • Это работает для Apache 2.4.18
  • GIFпоказывает конфигурацию VirtualHost с двумя различными записями виртуального хоста.В одном из комментариев к этому ответу говорилось, что разные виртуальные хосты не работают.Но они делают, пока имя сервера отличается.
0 голосов
/ 05 октября 2011

Вы можете изменить свои адреса, чтобы они http://bugzilla.ip -адрес: порт / и http://review.ip -адрес: порт / , а затем использовать директиву ServerName для использования правильный VirtualHost.

http://httpd.apache.org/docs/2.0/vhosts/examples.html

...