2014-03-07 3 views
1

아파치가 설치되어 있습니다.아파치가 설치된 Windows 서버 2003에서 htaccess가 작동하지 않습니다.

LoadModule rewrite_module modules/mod_rewrite.so이 주석 처리되지 않았으며 http.conf에서 AllowOverride None의 모든 인스턴스를 AllowOverride All으로 설정했습니다.

내 사이트는 하위 폴더에 있습니다. 따라서 내 주소는 http://123.34.56.123/Website/입니다.

htaccess로 파일

RewriteEngine On 
RewriteBase /Website/ 
Options +FollowSymLinks 

RewriteRule ^index.php http://www.google.com/? [R=301,L] 

하지만 위의 주소를 방문 할 때, 그것은 google.com과, 리디렉션하지 않는 대신, index.php를의 내용을 보여줍니다.

업데이트 :

추가 된 htaccess로 파일에 정크 및하여 http.conf 내부 서버 오류를 강제로, 그것은 여전히 ​​내의 index.php로 이동합니다.

$_SERVER에 var 덤프를 넣었습니다.이 내용은 ["SERVER_SOFTWARE"]=> string(17) "Microsoft-IIS/6.0"이지만 IIS에서 프로그램 파일을 찾을 수 없습니다.

+0

은'.htaccess' 파일을 어떤 폴더? 또한 직감 : 직책에서 "htaccess 파일"이라고 반복해서 부릅니다. 파일 이름 *은 반드시 .htaccess입니다. 이름이 올바르게 지정되었는지 확인할 수 있습니까? –

+2

이것이 새로운 설치 인 경우 - 일반적인 Windows 문제는 관리자가 아닌 사용자로 httpd.conf를 편집하는 것이며 관리자는 비 관리자 용으로 섀도 ​​복사본을 만듭니다. httpd는 계속 실제 파일을 사용합니다. 빠른 테스트는 "fdsfsfsfs"를 추가하고 아파치가 깨지는지 확인합니다. – covener

+0

@covener 흠, http를 편집했습니다.conf 파일에 정크를 추가하여 아파치를 깨뜨리지 않았다. 너는 나를 새로운 길로 가게했다. 고마워! – Josh

답변

0

질문, 문제의 몇 가지 가능한 원인을 바탕으로 :

  • 잘못이라는 .htaccess 파일. 당신은 당신의 포스트에서 그것을 "htaccess 파일"이라고 반복적으로 부른다. 파일 이름 이어야하며 .htaccess이어야합니다 (앞부분은 .입니다).

  • 잘못된 디렉토리에 있습니다. 이 파일이 사이트의 루트 디렉토리에 있는지 확인하십시오.

  • 사용하도록 설정해야하는 모듈은 이 아닌 mod_userdir.so입니다. 이와 같은 줄을 찾습니다

  • LoadModule rewrite_module modules/mod_rewrite.soRewriteRule가 적용되는, 또는 오류가있는 것 같은 [R=301,L]가 같은 줄에 있는지 확인합니다. 또한

, 심지어 테스트를 위해,이에 301을하지 않는다 - 영구적 Google에 index.php 트래픽을 리디렉션합니다. 그것이 301입니다. 테스트하려면 302을 사용하십시오.

+0

혼란과 실수로 인해서 죄송합니다. 그것은'.htaccess'라는 이름으로, 내 웹 사이트의 루트에서'/ Website /'에 있습니다. 활성화 된 모듈도 정확하며이를 반영하도록 게시물을 수정했습니다. 또한 RewriteRule은 플래그 [R = 301, L]와 동일한 행에 있습니다. 이는 내 게시물을 편집 할 때 다른 사람이 입력 한 결과입니다. – Josh