2014-06-24 4 views
1

login이라는 하위 도메인이 있고 그 폴더에 index.php 파일이 있습니다 (이 폴더는 내 문서 루트에 있습니다). .htaccess 파일의 내용 등이 함께, 문서 루트에 또한 : 나는 http://login.example.com/에 갈 때RewriteRule이 하위 도메인과 혼동합니다.

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^([^\.]+)$ $1.php [NC,L] 
ErrorDocument 404 http://www.example.com/error 
ErrorDocument 403 http://www.example.com/error 
ErrorDocument 500 http://www.example.com/error 

, 내가 aforehand 언급 한 오류 페이지에 끝낸다. 그러나 http://login.example.com/index.php으로 이동하면 정상적으로 작동합니다. 나는 RegEx에 익숙하지 않지만, .htaccess 파일 때문에 URL의 마지막 부분 인 .php 만 제거해야한다는 의혹이 있습니다.

도움을 주시면 큰 도움이됩니다.

편집 : 나는 그것을이있는 폴더 login.htaccess 파일을 추가하여 문제를 해결했습니다 도움말 모두

RewriteEngine Off 
DirectoryIndex index.php 

감사합니다! :-)

+0

아마'DocumentRoot index.php'가 필요합니다. –

+1

@RahilWazir가 아파치의 기본값이 될 수 없습니까? 'http : // www.example.com /'에 가면 잘 작동하기 때문에 URL에 URL을 지정하지 않고 내 index.php 만 표시합니다. – Fenno

+0

아파치에 의해 디폴트가 true이고'http : // www.example.com /'메인 도메인에서도 작동하지만 서브 도메인에 맞지 않을 수도 있습니다. –

답변

0

규칙은 나에게 잘 들립니다. 한편

, 당신은 아마 당신의 login 폴더 내부에 .htaccess 파일이 필요합니다

DirectoryIndex index.php 

당신이 http://login.example.com/404를 얻을 수 추측하고 그렇지 않은 기본 index.html을 찾고 있기 때문에 있다. Apache는 index.php을 해당 폴더의 색인 파일로 사용하라는 메시지가 필요합니다.

+0

'login' 폴더에'.htaccess' 파일을 추가했습니다. 내부에 DirectoryIndex index.php가 있지만 여전히 작동하지 않습니다! 나는 또한'login' 폴더에'index.html' 파일을 추가했습니다,하지만'http : // login.example.com /'에 갈 때 지금은 500 오류를줍니다. 어쩌면 문서 루트의 기본'.htaccess' 파일에서'login' 폴더를 어떻게 든 제외시킬 수 있습니까? – Fenno

관련 문제