Apache-2.4
Apache 似乎忽略了埠 80 vhost
這在今天早些時候有效(或似乎有效),但我最近重新啟動了我的伺服器,現在 Apache 似乎沒有確認我的埠 80 虛擬主機。
我的網站是從 /var/www/example.com/public_html 提供的,埠 80應該重定向到 HTTPS。在我的伺服器重新啟動之前,這是可行的;現在它沒有重定向,而是從 /var/www/html 提供預設內容。
我不確定伺服器重啟後是否需要啟動某些程序或服務?該站點已啟用,並且埠 443 虛擬主機按預期工作。Apache 版本是 2.4.27,作業系統是 Ubuntu 17.10。這是我在 /etc/apache2/sites-available/example.com.conf 中的 conf 文件。
LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_http_module modules/mod_proxy_http.so LoadModule ssl_module modules/mod_ssl.so <VirtualHost *:80> ServerName example.com ServerAlias www.example.com DocumentRoot /var/www/example.com/public_html <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTPS} !=on RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L] </IfModule> </VirtualHost> <VirtualHost *:443> SSLEngine On SSLCertificateKeyFile /etc/ssl/private/example_com.key SSLCertificateFile /etc/ssl/certs/example_com.crt SSLCertificateChainFile /etc/ssl/certs/example_com.ca-bundle ServerName example.com ServerAlias www.example.com DocumentRoot /var/www/example.com/public_html ProxyPreserveHost On ProxyPass /api http://localhost:1337/api ProxyPassReverse /api http://localhost:1337/api <directory /var/www/example.com/public_html/> Options -Indexes +FollowSymLinks +MultiViews AllowOverride All Require all granted <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC] RewriteRule ^(.*)$ https://%1/$1 [R=301,L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule (.*) index.html [L] </IfModule> </directory> </VirtualHost>
您的配置中是否有以下內容?
NameVirtualHost *:80 NameVirtualHost *:443
那些需要與您在
<VirtualHost>
塊中使用的內容相匹配