VirtualHosts w Apache na localu
Przeglądając sobie Polskie Forum PHP natrafiłem na posta, którego autor pyta w jaki sposób otwierać na localhoście strony zapisane w różnych katalogach. Pytanie było zadane w trochę innej formie (otwieranie typu: localhost/folder, które wskazuje na folder znajdujący się poza htdocs), ale z tego, co mi wiadomo, to VirtualHostsy działają tylko po osobnych IP
Dzięki temu dysponujemy możliwością postawienia 16581374 (127.0.0.1–127.255.255.255) wirtualnych hostów (mam nadzieję, że się nie pomyliłem w obliczeniach; jeśli tak, to proszę mnie poprawić).
Po pierwsze, musimy znaleźć plik konfiguracyjny Apache’a. Jest to plik httpd.conf znajdujący się w katalogu conf serwera. Otwieramy go np. w notatniku.
Najpierw szukamy:
- #
- # Listen: Allows you to bind Apache to specific IP addresses and/or
- # ports, instead of the default. See also the <VirtualHost>
- # directive.
- #
- # Change this to Listen on specific IP addresses as shown below to
- # prevent Apache from glomming onto all bound IP addresses (0.0.0.0)
- #
- #Listen 12.34.56.78:80
- Listen nazwa:80
Musimy zmienić Listen nazwa:80 na Listen 80. Spowoduje to nasłuch na wszystkich IP skierowanych na nasz komputer na konkretnym porcie, w przeciwieństwie do domyślnego ustawienia, które zmusza serwer do oczekiwania na żądania dla konkretnej nazwy hosta.
Teraz będzie mały „rozjazd”. Konfiguracja Apache 2.0.xx i 1.3.xx znajduje się tylko w jednym pliku (httpd.conf). Natomiast, począwszy od edycji 2.2.xx zmodularyzowano ją i została podzielona na kilka plików w katalogu extra. Jeśli masz Apache 2.2, to dopisujesz poniższy kod w pliku extra/httpd-vhosts.conf. Dodatkowo, w pliku httpd.conf musisz odkomentować linijkę:
- Include conf/extra/httpd-vhosts.conf
Jeśli wersja serwera jest niższa, to do httpd.conf.
- span class="st0">"H:/katalog"
W miejscu 127.0.0.2 wpisujesz adres z puli 127.0.0.2–127.255.255.255
Natomiast, tam, gdzie znajduje się H:/katalog wprowadzasz ścieżkę do wybranego katalogu na stronę.
Po zapisaniu zmian, zrestartuj demona/usługę i wpisz wprowadzony wcześniej w sekcji VirtualHost adres. Tyle :).
hm, sądzę że Name Based Virtual Hosting jest równie skuteczny ale pewne problemy może wywołać, ale do rzeczy:
httpd.conf
DefaultVhost:
and vhosty poszczegolne:
mam nadzieję, że Twój wp nie przefiltruje tego wszystkiego