2014-05-23 3 views
2

지금 나는 예외를 추가 할 그러나 /index.php의 PHP htaccess로 폴더 관리

Options +FollowSymLinks 
RewriteEngine on 

RewriteBase/

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.+)/$ $1 [L,R=301] 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule . /index.php [L] 

통해 이동 내 도메인에 대한 모든 요청을해야합니다. 요청이 "/ this_specific_folder /"폴더로 이동하면 "/index.php"대신 "/this_specific_folder/index.php"대신 현재의 기존 논리를 무시해야합니다.

어떻게하면됩니까? ?

+0

'한다 RewriteRule^(?/this_specific_folder)/$ "$ 1/index.php에 [L]'이 작동합니다을 – Deadooshka

+0

하셨습니까 ' "/ this_specific_folder"는 실제 경로이지만 "/ this_specific_folder/this_not_real_subfolder"경로에 다른 폴더 (실제 아님)를 추가하면 루트 "/index.php"로 리디렉션됩니다. – Reznik

+0

질문을 수정하십시오./this_specific_folder/non-real-path -> /this_specific_folder/index.php 및/this_specific_folder/real-path /> this_specific_folder/real-path? – Deadooshka

답변

1

당신은 그것을 이런 식으로 가질 수 있습니다. 그것은 실제의 패스의 경우

Options +FollowSymLinks 
RewriteEngine on 
RewriteBase/

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(this_specific_folder)(?:/.*)?$ /$1/index.php [L,NC] 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.+)/$ $1 [L,R=301]  

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule . /index.php [L] 
+0

이전 주석과 동일한 동작입니다. "/ this_specific_folder/this_not_real_subfolder"경로에 다른 폴더 (실제가 아님)를 추가하면 루트 "/index.php" – Reznik

+0

확인 된 대답을 지금 확인합니다. – anubhava

+0

그것은 500 오류 응답을 제공합니다. – Reznik

관련 문제