2013-08-16 2 views
0

내 아파치 서버에서이를 달성하기 위해 노력하고있어이 같은 URL를 입력특정 URL-다시 쓰기 상황

언제 :

http://www.mydomain.com/first_location/first_location.php 
:

http://www.mydomain.com/first_location 

mod_rewrite를가로 리디렉션한다

여기서 "first_location"은 유효한 폴더 이름이 될 수 있습니다.

나는 많은이 이삭을 할 수 있었다 :

RewriteRule ^[A-Za-z0-9-]/ ....... 

하지만이 상황에 대한 리디렉션 URL 부분을 처리하는 방법을 잘.

대체 부품을 완성하는 데 도움이되는 점을 알아보십시오 (필요한 경우 패턴 부분도 수정하십시오).

답변

1

first_location이 유효한 폴더 인 경우 mod_dir이라는 아파치 모듈이 있습니다.이 모듈은 자동으로 브라우저를 동일한 폴더로 이동하지만 슬래시가 뒤에옵니다. 따라서 DirectorySlash Off을 사용하여 mod_dir을 해제하거나 리디렉션을 허용하고 후행 슬래시와 일치시킵니다. 이 라인을 따라 뭔가를 원할 것입니다.

RewriteEngine On 
# check that it's a valid folder 
RewriteCond %{REQUEST_FILENAME} -d 
# check that the php file actually exists: 
RewriteCond %{REQUEST_URI} ^/([^/]+)/$ 
RewriteCond %{REQUEST_FILENAME}%1.php -f 
# rewrite 
RewriteRule ^/?([^/]+)/$ /$1/$1.php [L] 
+0

감사합니다. 나는 이것을 신선한 .htaccess 파일에 복사하고 붙여 넣었지만, 그것은 나에게 500 오류를 준다. 나는 아파치 설정 파일을 검사했고 mod_dir로드 명령은 주석이 풀려있다 (그래서 활성화 됨). – user1729972

+0

@ user1729972 mod_rewrite도 주석 처리되지 않았는지 확인해야합니다. –

+0

가장 확실합니다. mod_rewrite는 다른 것들, 특히 이것을 제외하고 작동합니다. – user1729972