我有重定向规则http配置文件文件将所有 HTTP 请求重定向到 HTTPS:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
这种方法效果很好,但我想排除robots.txt 被重定向到 https (所以应该http://www.mysite.com/robots.txt) 这主要是因为谷歌拒绝通过 ssl 抓取我的 robots.txt (?)
我尝试了几种不同的方法,但到目前为止,它要么 404 文件,要么忽略它并转到https://www.mysite.com/robots.txt(与网站其他部分一样)
我尝试了以下方法:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{REQUEST_URI} !^robots.txt
RewriteRule (.*)$ https://%{HTTP_HOST}/$1 [NC,R=301,L]
任何关于此事的建议都将不胜感激。
答案1
当然。
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^/robots\.txt$ - [L]
# or if this is in an htaccess or <Directory>:
# RewriteRule ^robots\.txt$ - [L]
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}