下面是我当前的.htaccess文件。我想添加另一个条件/规则,如果发出了对sitemap.xml的请求,则会提供sitemap.php。请帮助:)
Options +FollowSymLinks
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?filename=$1 [L,QSA]
</IfModule>
答案 0 :(得分:3)
您可以明确地执行此操作:
Options +FollowSymLinks
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^sitemap.xml$ sitemap.php [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?filename=$1 [L,QSA]
</IfModule>
你可能会遇到这样的问题......你应该为蜘蛛创建排除物,这样他们仍然会收到sitemap.xml
答案 1 :(得分:1)
RewriteRule ^ sitemap.xml $ public / sitemap.php [L]
答案 2 :(得分:1)
使用下面的代码,确保您的php文件以xml格式加载
header('Content-Type: text/xml');