Kiedy uzyskuję dostęp do serwera WWW Apache przy użyciu localhost z tego samego komputera z serwerem WWW, wyświetla domyślną stronę Apache2 Ubuntu.
Ale kiedy uzyskuję dostęp do serwera Apache przy użyciu 192.168.0.2 , pojawia się błąd 403 Forbidden (zabronione Nie masz uprawnień dostępu / na tym serwerze).
Dane serwera WWW
- Ubuntu 14.04 LTS
- Wersja Apache 2.4.7
Polecenia własności
www-data sudo adduser ftpuser www-data
sudo chown -R www-data:ftpuser /var/www
sudo chmod -R g+rwX /var/www
W etc / apache2 / apache2.conf pliku
ServerName 192.168.0.2
<Directory/>
AllowOverride All
Require all granted
</Directory>
W etc / apache2 / port.conf pliku
NameVirtualHost *:80
Listen *:80
Wirtualny host dla jednej strony internetowej
<VirtualHost *:80>
ServerName mysite
DocumentRoot /var/www/mysite
<Directory /var/www/mysite>
Options None FollowSymLinks
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
Jakie ustawienia muszę wykonać w jakim miejscu? Proszę pomóż...
ServerName 192.168.0.2
linię, ponieważ dyrektywa ServerName powinna mieć nazwę taką jak www.server.com, a nie numer IP. Myślę, że to może rozwiązać problem. W polu NazwaSerwera należy podać nazwę serwera, jeśli go masz. ServerName pozwala na wirtualny hosting oparty na nazwie, który pozwala mieć więcej stron internetowych pod tym samym adresem IP.Odpowiedzi:
1. Powinieneś skonfigurować swój plik / etc / hosts w następujący sposób :
Gdzie
test-site
jest drugi „localhost”. Imy-hostname
jest to „Systemowa nazwa hosta” zdefiniowana w/etc/hostname
.2. Powinieneś zdefiniować i włączyć Virtual Host (VH):
Istnieje domyślny VH HTTP. Jest umieszczony w
/etc/apache2/sites-available/
. Nazwa pliku to000-default.conf
. Musisz go edytować (możesz go zmienić, jeśli chcesz lub utworzyć inne pliki .conf, na jego podstawie), a następnie musisz go włączyć.Możesz włączyć go ręcznie, tworząc „miękki, symboliczny link”:
Lub możesz użyć narzędzia Apache2 o nazwie a2ensite , które tworzą to samo:
Załóżmy, że istnieją 3 wirtualne hosty , włączony protokół SSL i zarejestrowana domena prywatna (na przykład SOS.info):
I taki, który został stworzony na potrzeby tego tematu:
Zawartość pierwszych 2 VH to:
$ cat /etc/apache2/sites-available/
http.SOS.info.conf
Ten przekierowuje wszystkie żądania HTTP do HTTPS.
$ cat /etc/apache2/sites-available/
https.SOS.info.conf
To jest HTTPS VH.
Zawartość tych dwóch plików można opublikować w jednym pliku, ale w tym przypadku ich zarządzanie (
a2ensite
/a2dissite
) będzie trudniejsze.Trzeci wirtualny host to taki, który został stworzony do naszych celów :
$ cat /etc/apache2/sites-available/
http.test-site.conf
3. W tej konfiguracji należy uzyskać dostęp:
Na głównym przykładzie powinieneś uzyskać dostęp i :
Spróbuj otworzyć stronę w przeglądarce internetowej lub po prostu spróbuj (w terminalu) z następnymi poleceniami:
Oczywiście musisz mieć kilka
index.html
stron w ich DocumentRoot :)4. Potrzebujesz poprawnie skonfigurowanego `/ etc / apache2 / apache2.conf`.
Ii to dobry pomysł, aby poświęcić trochę czasu na poprawę bezpieczeństwa serwera. Te instrukcje dotyczą konfiguracji zabezpieczeń: 1. i 2 .. Tutaj możesz uzyskać bezpłatny certyfikat SSL. Strony te pomogą ci sprawdzić swoje postępy: 1. i 2. miejsce .
Zgodnie z powyższymi instrukcjami bezpieczeństwa
/etc/apache2/apache2.conf
plik musi wyglądać następująco:5. Skonfiguruj zaporę ogniową.
Aby zezwolić / zabronić zewnętrznego dostępu do twojego serwera WWW, możesz użyć UFW (nieskomplikowana zapora ogniowa):
Aby zezwolić tylko na
tcp
użycie protokołu:Możesz użyć bezpośrednio numeru portu:
Na wypadek, gdybyś mógł przeładować „tabelę reguł”:
Możesz użyć interfejsu GUI UFW, zwanego gufw .
Wybierz
Office
profil. Będzie to zestaw:Status:ON
,Incoming:Deny
aOutgoing:Allow
i dodać swoje zasady.6. Jeśli masz router, nie zapomnij przekierować niektórych portów:
Jeśli masz router i chcesz, aby twój serwer WWW był dostępny przez Internet , nie zapomnij dodać przekierowania portów. Coś w tym stylu .
źródło
/var/log/apache2/error.log
.Zmień własność katalogu, w którym podajesz swoje pliki, za pomocą polecenia:
źródło
Mam cię połączyć z tą odpowiedzią, w której rozwiązałem mój problem.
Przede wszystkim dodaj uprawnienia do folderu:
Następnie dodaj ten tekst:
Do końca tego pliku:
źródło