我有一台安装了 Apache、FastCGI 和 php-fpm 的 VPS 服务器。但是,.htaccess 文件似乎被忽略了。我有一个 .htaccess 文件,可将 http URL 重定向到 https URL:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [R=301,L]
</IfModule>
但规则被忽略,没有发生重定向。
这是我的虚拟主机文件(我将域名更改为 example.com):
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
ServerAdmin webmaster@localhost
DocumentRoot /var/www/example.com/public
<Directory />
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
Include /etc/apache2/conf-available/php7.0-fpm.conf
</VirtualHost>
Apache 重写模块似乎已启用。当我运行 时sudo apache2ctl -M
,rewrite_module (shared)
输出中显示 。
任何帮助都将不胜感激。谢谢。