.htaccess 리디렉션을 작성하는 올바른 방법을 찾는 데 문제가 있습니다.
하위 디렉토리의 모든 페이지를 보이지 않게 리디렉션하고 싶습니다.
http://my-site.com/test/any_page.php
...에
http://my-site.com/AIMS/rewrite.php
그러나 루트 하위 디렉토리를 리디렉션하고 싶지 않습니다.
위 URL은 리디렉션되지 않아야합니다. 내 규칙의 문제는 모든 페이지와 하위 디렉토리의 루트를 리디렉션한다는 것입니다.
이 특정 사례에 대해 이미 요청한 질문을 찾을 수 없습니다. 내가 뭘 잘못하고 있는지에 대한 조언에 미리 감사드립니다.
내 규칙은 다음과 같습니다.
<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !^my-site.com$ [NC]
RewriteRule ^(.*)$ http://my-site.com/$1 [L,R=301]
RewriteRule ^test/(.*)$ /AIMS/rewrite.php?data=$1 [NC,L]
</IfModule>
재 작성 .*
에서 0 개 이상의 문자 와 일치하는 것을 의미 하는 정규식 을 사용하고 있습니다. 하나 이상의 문자를 일치시키고 싶습니다 .
아래로 변경하면 트릭이 수행됩니다.
RewriteRule ^test/(.+)$ /AIMS/rewrite.php?data=$1 [NC,L]
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다