Сведения о вопросе

Junior

13:09, 26th August, 2020

Теги

linux   apache    

Запуск Apache рядом с другим веб-сервером?

Просмотров: 429   Ответов: 3

Был ли у кого-нибудь успех при запуске двух разных веб-серверов, таких как Apache и CherryPy, рядом друг с другом на одной машине? Я экспериментирую с другими веб-серверами прямо сейчас, и я хотел бы посмотреть, могу ли я делать свои эксперименты, сохраняя мои другие сайты и работать. Вы можете сказать, что это не столько вопрос конкретного программного обеспечения, сколько общий сетевой вопрос.

  • Я знаю, что можно запустить два веб-сервера на разных портах; но есть ли способ настроить их так, чтобы они могли работать на одном порту (т. е. они оба работают на порту 80)?
  • Веб-серверы не будут обслуживать файлы из одних и тех же доменов. Например, Apache может обслуживать документы из foo.domain.com, а другой веб-сервер будет обслуживать документы из bar.domain.com.

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



  Сведения об ответе

LAST

08:43, 3rd August, 2020

Вы не можете иметь два процесса, привязанных к одному и тому же порту на одном и том же адресе IP. Вы можете добавить еще один адрес IP в поле и заставить каждый сервер слушать по одному.

Другой вариант-прокси-передача одного сервера другому. С Apache, вы могли бы сделать что - то вроде:

NameVirtualHost *
<virtualhost *>
  ServerName other.site.com

  # assumes CherryPy listens on port 8080
  ProxyPass / http://127.0.0.1:8080/
  ProxyPassReverse / http://127.0.0.1:8080/
</Virtualhost>

Это довольно быстрый пример, но вы всегда можете проверить документацию ProxyPass . Помните, однако, что приложение, к которому проксируется, получит 127.0.0.1 в своих журналах вместо адреса IP запросчика. Некоторые веб-серверы (apache делает с mod_rpaf)могут заменить заголовок X-Forwarded-For вместо неправильного адреса IP. Возможно, у CherryPy есть это?


  Сведения об ответе

lesha

10:19, 29th August, 2020

Лучше всего было бы поместить Apache httpd перед портом 80 и ретранслировать запросы, предназначенные для других серверов через Apache, используя модули. Наиболее популярным сценарием будет Tomcat за Apache, где вы сможете запускать как php, так и jsp приложения.

Я не знаком с CherryPy, поэтому я могу только предложить вам искать модуль Apache для CherryPy.

Редактировать: это выглядит многообещающе: http://tools.cherrypy.org/wiki/BehindApache


  Сведения об ответе

ITSME

05:23, 27th August, 2020

В качестве альтернативы правильному ответу Ишмаэля, если у вас есть сервер с 2 сетевыми картами, Вы можете иметь каждый сервер, отвечающий на запросы по разным адресам IP.


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться