Nie zmieni Listen 80
się 443
na /etc/httpd/conf/httpd.conf
. SSL jest skonfigurowany w /etc/httpd/conf.d/ssl.conf
. W przypadku RHEL 6 protokół SSL jest włączony i domyślnie nasłuchuje na certyfikacie z podpisem własnym.
Możesz przejść do domyślnej witryny za pomocą protokołu SSL, przeglądając stronę https://localhost
(nie musisz dodawać portu na końcu adresu URL).
Jeśli chcesz przekazać wszystkie żądania HTTP do HTTPS (co, jak sądzę, próbujesz osiągnąć), możesz dodać stałe przekierowanie lub użyć modułu Apache mod_rewrite
.
Najłatwiejszym i najbezpieczniejszym sposobem jest skonfigurowanie stałego przekierowania. Włącz nazwanych wirtualnych hostów i dodaj Redirect
dyrektywę do VirtualHost w /etc/httpd/conf/httpd.conf
.
NameVirtualHost *:80
<VirtualHost *:80>
ServerName localhost
Redirect permanent / https://localhost
</VirtualHost>
Za pomocą mod_rewrite
możesz także utworzyć nazwanego wirtualnego hosta. To nie jest zalecana metoda, ale zadziała.
NameVirtualHost *:80
<VirtualHost *:80>
# Enable the Rewrite engine
RewriteEngine On
# Make sure the connection is not already HTTPS
RewriteCond %{HTTPS} !=on
# This rewrites the URL and forwards to https
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]
</VirtualHost>
Jeśli chcesz wyłączyć SSL, skomentuj te linie /etc/httpd/conf.d/ssl.conf
i uruchom ponownie Apache.
LoadModule ssl_module modules/mod_ssl.so
Listen 443
NameVirtualHost
jest przestarzały i zostanie usunięty w przyszłych wersjach Apache. Obecnie jest to już brak operacji. 2.Listen 443
może powodować problemy, jeśli apache jest już skonfigurowany do nasłuchiwania na porcie 443, co ma już miejsce w wielu dystrybucjach systemu Linux. Dodaj tylko, jeśli masz pewność, że ta linia nie jest skonfigurowana gdzie indziej.