我正在尝试将每个请求重定向到“https”,而不是对“example.org/forum / ...”的任何调用,但是解决方案的数量没有用,我无法弄清楚为什么例如这个方法不起作用:
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/forum/.*$
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)$ https://example.org$1 [R=301,L]
RewriteCond %{REQUEST_URI} ^/forum/.*$
RewriteCond %{SERVER_PORT} ^443$
RewriteRule ^(.*)$ http://example.org/$1 [R=301,L]
编辑:我现在在一个只使用一些文件夹,index.html文件和.htacess文件的域上试过这个例子,除了根目录中的这两个规则之外什么都没有,就像魅力一样!
关键是我尝试在下面带有cms的域上实现这一点,它是一个集邮安装,并且它不起作用。我也在wordpress安装上尝试过,它也不起作用! 所以我认为它与内部重定向有关,有没有人有线索!?我在网上找不到这样的案例......
答案 0 :(得分:2)
RewriteCond
directive REQUEST_URI
从/
开始,您应该更改这些规则:
RewriteCond %{REQUEST_URI} !^/forum/.*$
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)$ https://example.org/$1 [R=301,L]
RewriteCond %{REQUEST_URI} ^/forum/.*$
RewriteCond %{SERVER_PORT} ^443$
RewriteRule ^(.*)$ http://example.org/$1 [R=301,L]
答案 1 :(得分:-1)
上的RewriteEngine
RewriteCond%{HTTP_HOST} ^ yourdomaim.com $
RewriteRule(。*)https://www.yourdomain.com/ $ 1 [R = 301,L]
RewriteRule ^ $文件夹名称[L]
我可以将所有内容重定向到https
Foldername是youdomain.com/foldername之后的文件夹