2010-01-17 3 views
2

.htaccess에서 모드 재 작성 기능을 사용하여 REST 스타일 URL을 구현하려고합니다. 테스트 환경 (새로운 cpanel 계정)에서 개발하고있는 키커가 있습니다..htaccess는 REST 스타일 URL 500 오류로 다시 작성합니다.

RewriteEngine on 

#REMOVE THIS LINE ON SITE LAUNCH! 
RewriteBase /~myNewAccount/ 

#Hide .php extensions for cleaner URLS 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}\.php -f 
RewriteRule ^(.*)$ $1.php 

Options All -Indexes 

이 같은 외모를 사용할 수있는 URL : 여기에 htaccess로의

www.example.com/~myNewAccount/index/id/50 

: 나는 여기에 PATH_INFO에 액세스 할 수 있습니다

www.example.com/~myNewAccount/index.php/id/50 

,하지만 나는이 작업을 수행 할 때 ... 500 개의 내부 서버 오류가 발생합니다. 나는 검보에 의해 solution found here을 구현하려고 시도했지만, 그 일은 엉망이된다.

이 문제의 원인에 대한 아이디어는 무엇입니까?

답변

2

이 규칙보십시오 :

RewriteRule ^index(/.*)?$ index.php$1 [L] 

을 또는 당신은 인덱스 전혀 URL 경로에 있어야하지 않으려면 :

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

문제는 내가 기본 URL을 많이 가지고 있습니다입니다 (index.php와 비슷하지만 다른 이름으로) 나는 모든 페이지에 규칙을 실제로 가지고 싶지 않습니다. 이것이 가능한가? – jay

+0

@jeose : 대체 경로에서 상대 경로를 사용하는 경우에는 항상 기본 경로에 의존합니다. – Gumbo

관련 문제