Wie erstelle ich virtuelle Hosts für verschiedene Ports auf Apache?

20

Ich möchte, dass Apache dies tut

mydomain.com:80  --- opens var/www1
mydomain.com:81  --- opens var/ww2
mydomain.com:82  --- opens var/www3

Problem ist, ich weiß nicht, ob diese Ports unter Linux geöffnet sind (wie überprüfe ich?)

Und wenn nicht, wie öffne ich sie in der Firewall und lasse Apache abhören?

Ich habe es versucht

> iptables -A RH-Firewall-1-INPUT -m  NEW -m tcp -p tcp –dport 81 -j ACCEPT
iptables v1.3.5: Couldn't load match `NEW':/lib64/iptables/libipt_NEW.so: cannot open shared object file: No such file or directory

und ich habe die Ports überprüft ... sieht aus wie httpd hört ... aber ich weiß nicht, warum ich meine URL nicht treffen kann

> netstat -tulpn | less
tcp        0      0 :::80       :::*      LISTEN      6840/httpd
tcp        0      0 :::81       :::*      LISTEN      6840/httpd
tcp        0      0 :::82       :::*      LISTEN      6840/httpd
qodeninja
quelle

Antworten:

39

Um Jeffs Antwort zu erweitern, benötigen Sie so etwas in Ihrer Apache-Konfiguration

Listen 80
Listen 81
Listen 82

# Listen for virtual host requests on all IP addresses
NameVirtualHost *:80

<VirtualHost *:80>
DocumentRoot /var/www1
ServerName www.example1.com
</VirtualHost>

NameVirtualHost *:81
<VirtualHost *:81>
DocumentRoot /var/www2
ServerName www.example2.org
</VirtualHost>


NameVirtualHost *:82
<VirtualHost *:82>
DocumentRoot /var/www3
ServerName www.example3.org
</VirtualHost>
sreimer
quelle
Ich habe genau das getan ... aber immer noch keine Liebe
Qodeninja
Können Sie mit einem dieser Ports lokal und / oder remote telneten?
Sreimer
NameVirtualHosthat keine Wirkung bei Verwendung mit Apache 2.4
Vahid Amiri
NameVirtualHost scheint eine Auswirkung auf mich zu haben, und ich verwende Apache 2.4: Ohne NameVirtualHost reicht "<VirtualHost *: number>" nicht aus, um zu verhindern, dass VirtualHost auf anderen Ports antwortet.
RSethc
7

Schritt 1: Konfigurieren Sie Apache so, dass es auf jedem der zu wartenden Ports empfangsbereit ist.

Schritt 2: Richten Sie für jeden zu wartenden Port eine Virtual Host- Konfiguration ein.

Jeff Albert
quelle