.htaccess 结合htaccess重定向和重写(非www到www、http到https、带关键字的目录到根目录)
我(有时)以某种方式成功地管理了.htaccess文件,但在这方面需要帮助 我想同时做到以下几点.htaccess 结合htaccess重定向和重写(非www到www、http到https、带关键字的目录到根目录),.htaccess,redirect,.htaccess,Redirect,我(有时)以某种方式成功地管理了.htaccess文件,但在这方面需要帮助 我想同时做到以下几点 将非www的内容重定向到www 将带有/site或/site/的任何内容重定向到root 将http重定向到https 最后,每个链接,不管它是如何产生的,都应该以/original\u request\u directory\u或\u file\u(如果有的话)开始和结束 我可以得到1,没问题 RewriteEngine on RewriteCond %{HTTP_HOST} ^domain.co
RewriteEngine on
RewriteCond %{HTTP_HOST} ^domain.com$
RewriteRule ^/?$ "http\:\/\/www\.domain\.com\/" [R=301,L]
我可以得到#2没有问题,它与#1一起工作
到目前为止,我无法实现的是#3
当我启用上述代码时,我得到了重定向循环错误的浏览器错误
期待一个解决方案(因为我确信这是可能的,但我不知道如何解决。)
提前谢谢大家 如果您将所有内容重定向到https,请避免在重定向到http之前进行重定向
RewriteEngine on
RewriteRule ^site/? https://www.domain.com/ [R=302,L]
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^domain.com$
RewriteRule ^ https://www.domain.com%{REQUEST_URI} [R=302,L]
当一切正常时,将[R=302,L]更改为[R=301,L]。不幸的是,这导致了“重定向循环”错误(Chrome的通知)
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
RewriteEngine on
RewriteRule ^site/? https://www.domain.com/ [R=302,L]
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^domain.com$
RewriteRule ^ https://www.domain.com%{REQUEST_URI} [R=302,L]