2013-05-24 2 views
1

아래는 현재 .htaccess 파일입니다. sitemap.xml에 대한 요청이 만들어지면 대신 sitemap.php가 제공되는 또 다른 조건/규칙을 추가하고 싶습니다. 도와주세요 :).htaccess URL 다시 쓰기 (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> 

답변

2

당신은 명시 적으로 할 수있는 :

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> 

당신은 가능성이 있지만이 일을 문제로 실행거야 ... 그들은 여전히 ​​사이트 맵을받을 수 있도록 당신은 거미에 대한 제외를 작성해야합니다. XML

+0

가 초기 재 작성하기 위해 XML 라인에 이러한 조건을 적용하지 않을까요? 나의 htaccess recolection은 일종의 어렴풋한 것이지만, 인덱스 조건이 명시되기 전에 새로운 규칙이 올 것이라고 가정했을 것입니다. –

+0

Point taken. 좋은 캐치; 나는 그것이'% {REQUEST_FILENAME}! -f' 이후에 멈출 것이라고 생각하지 않았습니다. – stslavik

+0

그래, "RewriteCond % {REQUEST_FILENAME}"뒤에이 새로운 규칙을 써야합니까! -f ".php 파일이 있습니다. 사이트 맵을 동적으로 생성하지만 크롤러가 콘텐츠를보기 위해 use sitemap.xml을 찾을 수있게하려고합니다. –

1

한다 RewriteRule ^의 sitemap.xml의 $ 공개/sitemap.php [L]