mod_rewrite http/https 对于 robots.txt

mod_rewrite http/https for robots.txt

有没有办法为 robots.txt 重写 path/filename?

在我的文档根目录中,我放置了 robots.txt 和一个 robots_ssl.txt。现在我想 "redirect" 机器人,这取决于他实际访问的站点。我在 .htaccess 中制定了一条规则,内容如下:

RewriteCond %{SERVER_PORT} ^443$
RewriteRule ^robots\.txt$ robots_ssl.txt [L]

为了查看差异,我在两个文件的顶部添加了注释。当我调用 https://example.com/robots.txt 时,它应该显示一个带有注释的 txt 文件:

robots.txt 用于 https

否则,如果是 http:

robots.txt 对于 http

有什么解决问题的想法吗?我的 RewriteCond 错了吗?

您可以使用此规则来提供特定于 SSL 的服务 robots.txt

RewriteEngine On

RewriteCond %{HTTPS} on
RewriteRule ^robots\.txt$ robots_ssl.txt [L,NC]