0

我已经尝试了很长时间来解决我遇到的这个问题。

在我的网站上,我用 htaccess 文件重写了一些链接。htaccess 文件当前如下所示:

RewriteEngine on

RewriteRule ^([a-zA-Z0-9_-]+)$ index.php?sideID=$1  
RewriteRule ^([a-zA-Z0-9_!-]+)/([a-zA-Z0-9_!-]+)/([a-zA-Z0-9_!-]+)$ index.php?sideID=$1&id=$2&title=$3  

RewriteCond %{HTTP_HOST} ^www\.mypage\.no$
RewriteRule ^/?$ "http\:\/\/mypage\.no\/" [R=301,L]

第一条规则重写自:

http://mypage.com/index.php?sideID=home

对此:

http://mypage.com/home

第一条规则重写自:

http://mypage.com/index.php?sideID=b&id=12&title=a-great-blog-post

对此:

http://mypage.com/b/12/a-great-blog-post

我猜他们在重写时也会做我想做的事。但是,问题是,如果我现在导航到网站上的任何博客文章,然后尝试导航回任何其他链接,例如http://mypage.com/home,它将添加http://mypage.com/b /12/home代替。这当然可以通过在导航中使用绝对 URL 来轻松解决。但是当我尝试制作 XML 站点地图时,机器人将为每个博客 ID 索引每个页面,如下所示:http://mypage.com/b/12/homehttp://mypage.com/b/13/home , http://mypage.com/b/14/home等每个博客 ID 和页面名称。

有没有办法确保 RewriteRule 单独应用或为它们设置条件或类似的东西?我在这方面有点菜鸟。

我求求你,请帮助我!:)

4

0 回答 0