Frage

Bis vor kurzem hatte ich eine Reihe von virtuellen Seiten wie so ein:

<VirtualHost 127.0.0.1:1234>
    ...

Dies funktioniert für die Prüfung auf meinem lokalen Rechner in Ordnung, wo ich einen Linux-Desktop verwenden. Um zu testen, wie MS und Explorer zeigen meine Seiten von meinem Windows-Laptop, änderte es das

<VirtualHost *:1234>
    ...

Welche auch gut funktioniert, von der Website bis Aufruf http: // [mylinuxservername]: 1234 auf meinem Laptop IE. Allerdings möchte ich, dass die Platzhalter auf dem lokalen LAN beschränken. Anstecken jeder IP, wie 192.nnn.nnn.nnn oder 192. *. *. *, Wobei der Platzhalter ist obigen Ergebnisse in 403 Forbidden auf dem Windows-Rechner. Der lokale Server noch funktioniert gut auf meiner Linux-Box:

<VirtualHost 127.0.0.1:1234 192.*.*.*:1234>
    ...

oder

<VirtualHost 127.0.0.1:1234 192.nnn.nnn.nnn:1234> #exact IP of laptop
    ...

Wie auch immer, ich mag es nicht, dass die Platzhalter in der zweiten Konfigurationsbeispiel oben. Hinweise anyone?

War es hilfreich?

Lösung

Der Parameter (n) von VirtualHost sind die lokalen Adressen, die Sie hören, nicht die Fern diejenigen.

In Apache 2.4 und neuere, verwenden Sie die Require Richtlinie:

Require ip 127.0.0.0/8
Require ip 192.0.0.0/8

Wenn Sie mit Apache 2.2 oder früher, verwenden Sie die authz_host Konfiguration:

Order Allow,Deny
Allow from 127.0.0.0/8
Allow from 192.168.0.0/16

Dies kann auch 2.4 auf Apache arbeiten, aber Order und Allow sind veraltet .

Andere Tipps

Nur ein Hinweis für den Fall, wie ich einige noobs kommen hier:)

  

Apache HTTP-Server ist, indem Richtlinien im Klartext konfiguriert   Konfigurationsdateien. Die Hauptkonfigurationsdatei ist in der Regel genannt   httpd.conf.    Hauptkonfigurationsdateien

Für Version 2.4

  

Das Zulassen, Abweisen und Order-Richtlinien, die von mod_access_compat vorgesehen,   veraltet sind und wird in einer zukünftigen Version geht weg. Du solltest vermeiden   mit ihnen, und vermeiden Sie veraltete Tutorials ihre Verwendung zu empfehlen.    Access Control

Require ip 127.0.0.0/8
Require ip 192.0.0.0/8

oder (nicht genau das gleiche)

Require ip 127.0
Require ip 192.168

iptables verwenden Zugriff auf die Maschine beschränken sich. Der erste Befehl wird HTTP-Datenverkehr von jedem Netzwerk im 192 Bereich ermöglichen (beachten Sie, dass ich glaube, Sie brauchen wirklich 192.168 lokal zu sein, aber ich könnte falsch). Der zweite Befehl einfach verwirft Pakete aus anderen Quellen für Port 80

iptables -I 1 INPUT -s 192.0.0.0/8 -p tcp --dport 80 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT


iptables -I 2 INPUT -p tcp --dport 80 -m state --state NEW -j DROP 

Dann in Ihrem virtuellen Host können Sie tun <VirtualHost *:80>

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top