我想将所有连接从htt_p://www.example.com/abc.html重定向到HTTP_S://www.example.com/abc.html。什么mod_alias或mod_rewrite命令可以用于此?我试过了:
RewriteEngine on
RewriteCond %{HTTPS} =off
RewriteRule $abc\.html^ https://www.example.com/abc.html [R]
在.htaccess和httpd.conf中但是不起作用。如果RewriteRule中的第一个字符串是其他任何内容(如abz.html),则它可以工作,但如果它是abc.html则不行。 abc.html是服务器上的真实文件(不是另一个重定向)。选项FollowSymlinks出现在相应的Directory指令中。
非常感谢。
答案 0 :(得分:1)
以下内容将允许您将非SSL页面重定向到SSL版本(假设您在端口443上运行SSL):
RewriteEngine on
# Limited redirects
RewriteCond %{SERVER_PORT} !^443$
RewriteCond %{REQUEST_URI} ^/abc\.html$ [OR,NC]
RewriteCond %{REQUEST_URI} ^/def\.html$ [OR,NC]
RewriteCond %{REQUEST_URI} ^/ghi\.html$ [NC]
RewriteRule ^/(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
RewriteCond之后的[OR]标志字面意思是“或”,这就是为什么最后一个条件没有它