我在 htaccess 文件中写了下面的 htaccess 规则。它适用于http。
RewriteRule ^(.*)$ index.php [QSA,L]
但是当我尝试使用 HTTPS 访问我的站点时,此规则不会执行。谁能帮我解决这个问题。
注意-我已经为我的站点安装了 SSL。
我认为您需要在 apache 的 httpd.conf 文件中为 ssl(端口 443)添加一个单独的 VirtualHost 指令,由于它需要端口 80,因此未评估您现有的规则。
基于this answer作为httpd.conf的这些行:
<VirtualHost IPADDRESS:443>
RewriteEngine On
RewriteRule ^(.*)$ index.php [QSA,L]
</VirtualHost>
谢谢您的帮助。你的回答是正确的。但问题是我为同一个 443 端口创建了两个虚拟主机。其中之一具有以下代码:
AllowOverride All 全部允许
我刚刚删除了一个 VirtualHost 并重新启动了 appache,我的 htaccess 开始工作了。感谢支持!!!!