一尘不染

将非索引页面请求重定向到具有.htaccess的哈希链接

ajax

我的正则表达式 较弱 ,仅当请求是从外部链接传入时,我才需要将任何 FileName.htmFileName.html
页面请求重定向到 ./#FileName 。这些文件都将驻留在根目录中。

这是我到目前为止所拥有的。它给我错误:(

RewriteCond %{REQUEST_FILENAME} !index.html$|!index.htm$ [NC]
RewriteCond %{HTTP_REFERER} !^$ 
RewriteCond %{HTTP_REFERER} !example\.com [NC]  
RewriteRule ^([a-zA-Z0-9\-_]+)\.html$ /#$1 [NE, R]

第一行 确保仅索引文件不被重定向。 如果请求来自未知引荐来源 则第二行 不重定向。 第三行将 我的域排除在重定向规则之外。
第四行将其 重定向到哈希链接。

这似乎不起作用。
如果有更有效的方式来编写此代码,请多谢。谢谢!


阅读 193

收藏
2020-07-26

共1个答案

一尘不染

尝试以下规则:

RewriteCond $1 !=index [NC]
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?example\.com/ [NC]
RewriteRule ^([a-zA-Z0-9\-_]+)\.html?$ /#$1 [NE,R]
2020-07-26