2011-10-31 4 views
1

문제는 다음과 같습니다. 서버가 배포되어 어떤 이유로 서버가 평상시처럼 URL에 응답하지 않습니다. 무슨 뜻입니까? 이라는 파일을 mysite.com/에 업로드하고 브라우저에 mysite.com/somefile을 입력하면 somefile.php이 404가 발견되지 않고 호출됩니다. 나는 이것이 이상하고 어떤 이유로 somefile.php 파일이 호출되고 mysite.com/somefile 뒤에 mysite.com/somefile/someotherfile과 같은 정보가 있으면 내 .htaccess 파일이 올바르게 다시 쓰지 못하게한다고 생각합니다. someotherfile이 무시되고 somefile.php이 표시됩니다. 다른 모든 .htaccess 파일은 서버의 상위 디렉토리에서도 삭제되며 여전히 동일한 결과가 나타납니다. 나는 당신이 나를 도울 수 있기를 바랍니다.PHP Apache 서버 URL 다시 쓰기 문제

로컬 호스트에서이 문제는 관찰되지 않습니다. 내가해야 할 404 찾지 못했습니다 ...

+2

이 문제가 될 수 있을까요? http://stackoverflow.com/questions/5692178/apache-ignoring-file-extensions –

+0

또한 mod_rewrite 로그를 활성화하고 그것이 실제로 문제를 일으키는 지 확인할 수 있습니다. http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html#rewritelog –

+0

그래, 이건 내 문제인 것 같지만 대답이 없기 때문에 나는 내 htaccess 파일을 모두 삭제했기 때문에 나는 믿지 않는다. 그들이 원인이되는 것 : ( –

답변

2

MultiViews이 (가) 현재 사용하도록 설정되어 있습니다. 문제를 해결하십시오.

Multiviews를

MultiViews을이이 옵션 내 지시, 또는 값을 httpd.conf에서 섹션 을 설정할 수 있습니다 의미하는 디렉토리 별 옵션, 또는 (에 AllowOverride가 적절히 설정되어있는 경우) .htaccess 파일에 있습니다. Options All은 MultiViews를 설정하지 않습니다. 당신 이름으로 요청해야합니다. 다음

MultiViews를 효과는 : 다음, 서버/일부/DIR은 MultiViews을 활성화 한 경우,/일부/DIR/foo에 대한 요청을 수신하고, 은/일부/DIR/푸 없으면 서버는 이라는 이름의 파일을 찾고 foo. *라는 파일을 찾고 사실상 모든 파일의 이름을 지정하는 유형 맵을 가짜로 만들고 클라이언트가 중 하나를 요청한 경우 동일한 미디어 유형과 콘텐츠 인코딩을 할당합니다. 그들 이름으로. 그런 다음 클라이언트의 요구 사항에 가장 잘 맞는 것을 선택합니다.

http://httpd.apache.org/docs/2.2/content-negotiation.html#multiviews