如何从重定向中排除目录

时间:2016-07-30 19:01:53

标签: .htaccess url-redirection

我有一个子域名,例如http://subdomain.example.com,因为我将整个子域名重定向到http://example.com/subdomain/

对于Google,我需要使用sitemaps文件访问sitemap目录,如下所示:http://subdomain.example.com/sitemaps/sitemap01.xml

我的htaccess将站点地图网址重定向到主网址(http://example.com/subdomain/)。

我的htaccess看起来像这样:

    RewriteEngine On
    Options +FollowSymlinks

    RewriteCond %{HTTP_HOST} ^subdomain\.example\.com$
    RewriteRule ^(.*)$ http://example.com/subdomain/

RewriteRule ^.*/([^/]+-[0-9]+)$ /$1 [R=301,NC,L]
RewriteRule ^(.+)-([0-9]+)$ appsite.php?title=$1&id=$2 [NC,L]

我在网上寻找解决方案,但找不到任何东西,我可以使用。

1 个答案:

答案 0 :(得分:1)

只需检查网址是否不以sitemap开头。请尝试应用此RewriteRule(删除您的RewriteCond)。

RewriteRule ^(?!sitemap)(.*)$ http://example.com/subdomain/$1

如果仍然无效,请在RewriteCond之后添加此条目(但使用您当前的RewriteRule,而不是我的)

RewriteCond %{REQUEST_URI} !^/sitemap.*$