Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Konfiguracja apacha ale nie na localhost
Forum PHP.pl > Forum > Serwery WWW > Apache
code46
Od dłuższego czasu korzystam z apacha, php i mysql pod Windowsem. Chciałbym teraz skorzystać z możliwości udostępniania do testowania swoich skryptów innym. Szukałem na google ale nie mogę znaleźć. Wszędzie jest opisana instalacja tej trójce na localhost. Chciałbym też uniknąć ponowej instalacji. Czy możecie mi wskazać co i gdzie pozmieniać żeby do mojej bazy i serwera www mieli dostęp ludzie z internetu? Nie mam domeny ale będę korzystał z numeru IP pojego providera.
escaflowne
1. Twój adres IP: stały czy dynamiczny (zmienny)?
2. Siedzisz w sieci lokalnej (adres IP z "serii" 10.x.x.x lub np. 192.168.x.x) czy masz bezpośrednio zewnętrzny IP?
Tak czy siak, powinieneś zainteresować się http://www.dyndns.org/services/ stroną. Tam możesz np. dostać za darmo domenę z końcówką, np. .ath.cx, która wskazywać będzie na dowolnie wybrany przez ciebie adres IP (czyli na twój).
Co do Apache'a: potrzebna będzie modyfikacja pliku konfiguracyjnego (httpd.conf) i dodanie w nim tzw. "wirtualek". Przykładowo:
Cytat
NameVirtualHost *:80

<VirtualHost *:80>
    ServerAdmin admin@twoja.domena.pl
    DocumentRoot c:\folder\gdzie\trzymana\jest\witryna
    ServerName domena.tejże.witryny
    ErrorLog c:\lokalizacja\pliku\logu\błędów\na\witrynie
    CustomLog c:\lokalizacja\pliku\logu\dostępu\do\witryny
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin admin@inna.domena.pl
    DocumentRoot c:\folder\gdzie\trzymana\jest\inna\witryna
    ServerName domena.innej.witryny
    ServerAlias inne.domeny.tejże.witryny
    ErrorLog c:\lokalizacja\pliku\logu\błędów\na\innej\witrynie
    CustomLog c:\lokalizacja\pliku\logu\dostępu\do\witryny
</VirtualHost>


Podany przykład definuje dwie wirtualki, na jednym serwerze, nasłuchujące na jednym (80) porcie, ale "reagujące" na inne domeny.
Dyrektywa NameVirtualHost *:80 mówi serwerowi, że witryny będą nasłuchiwać na porcie 80, a będą rozróżniane po domenie.
Można pominąć tę dyrektywę, ale wtedy poszczególne witrtualki rozróżniane będą po porcie i/lub adresie IP. Wtedy każda wirtualka będzie znajdować się w takich oto tagach:
Cytat
<VirtualHost adres.ip:port>
</VirtualHost>
code46
Cytat(escaflowne @ 2005-06-15 08:56:34)
1. Twój adres IP: stały czy dynamiczny (zmienny)?
2. Siedzisz w sieci lokalnej (adres IP z "serii" 10.x.x.x lub np. 192.168.x.x) czy masz bezpośrednio zewnętrzny IP?
Tak czy siak, powinieneś zainteresować się http://www.dyndns.org/services/ stroną. Tam możesz np. dostać za darmo domenę z końcówką, np. .ath.cx, która wskazywać będzie na dowolnie wybrany przez ciebie adres IP (czyli na twój).
Co do Apache'a: potrzebna będzie modyfikacja pliku konfiguracyjnego (httpd.conf) i dodanie w nim tzw. "wirtualek". Przykładowo:
Cytat
NameVirtualHost *:80

<VirtualHost *:80>
    ServerAdmin admin@twoja.domena.pl
    DocumentRoot c:\folder\gdzie\trzymana\jest\witryna
    ServerName domena.tejże.witryny
    ErrorLog c:\lokalizacja\pliku\logu\błędów\na\witrynie
    CustomLog c:\lokalizacja\pliku\logu\dostępu\do\witryny
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin admin@inna.domena.pl
    DocumentRoot c:\folder\gdzie\trzymana\jest\inna\witryna
    ServerName domena.innej.witryny
    ServerAlias inne.domeny.tejże.witryny
    ErrorLog c:\lokalizacja\pliku\logu\błędów\na\innej\witrynie
    CustomLog c:\lokalizacja\pliku\logu\dostępu\do\witryny
</VirtualHost>


Podany przykład definuje dwie wirtualki, na jednym serwerze, nasłuchujące na jednym (80) porcie, ale "reagujące" na inne domeny.
Dyrektywa NameVirtualHost *:80 mówi serwerowi, że witryny będą nasłuchiwać na porcie 80, a będą rozróżniane po domenie.
Można pominąć tę dyrektywę, ale wtedy poszczególne witrtualki rozróżniane będą po porcie i/lub adresie IP. Wtedy każda wirtualka będzie znajdować się w takich oto tagach:
Cytat
<VirtualHost adres.ip:port>
</VirtualHost>

Jestem w lanie i adresy mam seri 10.x.x.x. Ok spróbuje tak i dam znac. Do tej pory wpisywałem w miejsce Name Server główney adres IP i chciał się logować na router.
escaflowne
Następne pytanie: czy twój serwer www ma być dostępny z zewnątrz (z Internetu) czy z wewnątrz (tylko dla osób z tej samej sieci lokalnej)?
code46
Cytat(escaflowne @ 2005-06-15 09:59:10)
Następne pytanie: czy twój serwer www ma być dostępny z zewnątrz (z Internetu) czy z wewnątrz (tylko dla osób z tej samej sieci lokalnej)?

Z internetu. Właśnie w tym problem że z internetu. Pisałem wcześniej o tym
escaflowne
Jeżeli ma być dostępny z Internetu, musiałbyś pogadać z administratorem sieci, żeby założył dla cię forwardowanie portu z zewnętrznego IP (najlepiej portu 80) na twój adres IP w sieci lokalnej.
code46
Cytat(escaflowne @ 2005-06-15 12:53:19)
Jeżeli ma być dostępny z Internetu, musiałbyś pogadać z administratorem sieci, żeby założył dla cię forwardowanie portu z zewnętrznego IP (najlepiej portu 80) na twój adres IP w sieci lokalnej.

A jak przekieruje port 80 to inny użytkownicy będą mogli korzystać z przeglądarki?

Jak to zrobić? Tu jest screen z naszego routera
router

Jakie wartości mam pokolei wpisać? Mo adres wewnętrzny to 10.0.0.6
escaflowne
Prawdopodobnie trzeba będzie wpisać dane tak:
ID: 5
Public Port - Start: 80
Public Port - End: 80
Private Port: 80
Port Type: TCP
Host IP Address: 10.0.0.6
Teoretycznie, kiedy to zrobisz, jeżeli odwołasz się do portu 80 waszego zewnętrznego IP, to połączenie to zostanie przekierowane na port 80 twojego serwera (10.0.0.6).

A inni użytkownicy (zakładam, że chodzi o innych użytkowników twojej sieci lokalnej) będą mogli się odwoływać do twojego serwera WWW i przez adres zewnętrzny i przez adres wewnętrzny.
code46
Cytat(escaflowne @ 2005-06-15 14:30:26)
Prawdopodobnie trzeba będzie wpisać dane tak:
ID: 5
Public Port - Start: 80
Public Port - End: 80
Private Port: 80
Port Type: TCP
Host IP Address: 10.0.0.6
Teoretycznie, kiedy to zrobisz, jeżeli odwołasz się do portu 80 waszego zewnętrznego IP, to połączenie to zostanie przekierowane na port 80 twojego serwera (10.0.0.6).

A inni użytkownicy (zakładam, że chodzi o innych użytkowników twojej sieci lokalnej) będą mogli się odwoływać do twojego serwera WWW i przez adres zewnętrzny i przez adres wewnętrzny.

Tylko ja tak próbowałem.. I jak wpisze w przeglądarce adres np. 83.29.16.240 (adres Ip zewnętrzny) to prosi o hasło i login na router...
escaflowne
Cytat(code46)
Tylko ja tak próbowałem.. I jak wpisze w przeglądarce adres np. 83.29.16.240 (adres Ip zewnętrzny) to prosi o hasło i login na router...

Cytuję fragment załączonego przez ciebie wcześniej zrzutu ekranu ekranu konfiguracyjnego routera:
Cytat
Settings need to be saved to Flash and the system needs to be rebooted for changes to take effect.
code46
Napisze co i jak zrobilem.

KROK 1: Zarejestrowałem się na http://www.dyndns.org/services/ wybrałem domene załóżmy test.homelinux.com. Pobrałem klienta i skonfigurowałem (jest odpalony). Wpisuję w przeglądarce www.test.homelinux.com i mogę się logować na router z każdego miejsca świata;)

KROK 2:
Przekierwoałem port tak jak kazałeś.

KROK 3:
W pliku httpd.conf na końcu odkomentowałem kilka linijek i wygląda to tak:
Cytat
# Use name-based virtual hosting.
#
NameVirtualHost *:80

#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for requests without a known
# server name.
#
<VirtualHost *:80>
    ServerAdmin webmaster@test.homelinux.com
    DocumentRoot E:/Files/Apache Group/Apache2/htdocs/phpMyAdmin/www/
    ServerName test.homelinux.com
    ErrorLog E:/Files/Apache Group/Apache2/htdocs/phpMyAdmin/www/error.log
    CustomLog E:/Files/Apache Group/Apache2/htdocs/phpMyAdmin/www/error.log
</VirtualHost>
PHPIniDir "C:/php"


Odpalam apacha i po tej zmianie nie chce się uruchamiać..
Wywala komunikat
Cytat
The requested operation has failed!


Ma ktoś jakiś pomysł?
escaflowne
Moim zdaniem wciąż nie działa przekierowanie portu. Po wpisaniu w przeglądarce test.homelinux.com powinien zgłaszać się twój serwer a nie router.
Czy po wprowadzeniu zmian w konfiguracji routera zresetowałeś go (tak jak kazał producent)?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.