2009-11-07 4 views
1

쉬운 일이라면 사과드립니다. 나는 아무 소용이 들리도록 봤다..htaccess 우분투에서 mod_rewrite 규칙이 작동하지 않습니다.

저는 Ubuntu 9.04, Jaunty Jackelope 및 Apache2를 실행하고 있습니다. 많은 문제가 발생한 후, 마침내 mod_rewrite를 사용하고 내 .htaccess 파일이 문제를 일으키려고 시도했지만 실패했습니다. 이건 제 설정입니다.

/etc/apache2/conf.d/ apeace-public-html.conf라는 파일이 있습니다. 다음과 같이 읽습니다

# makes /home/apeace/public_html/ available through /localhost/apeace 

Alias /apeace /home/apeace/public_html/ 

을 그리고에 /이 집/에이피 스/public_html을가 나는 다음의 .htaccess 파일 한/: /이 집/에이피 스/public_html을가 나는 파일 이름을 지정한/또한

Options +FollowSymlinks 
RewriteEngine on 

RewriteRule ^test\.html$ index.html 

을에 index.html,하지만 test.html라는 파일이 없습니다. http://localhost/apeace/test.html에 액세스하려고 시도하면 indexewtml이 다시 작성되어야합니다. 그러나 이것은 내가 얻는 오류입니다.

Not Found 

The requested URL /home/apeace/public_html/index.html was not found on this server. 

그래서 내가 세계에서 뭘 잘못하고 있니?

감사합니다.

-apeace 그것은 "index.html을"찾을 수 없습니다 당신을 말하고 있기 때문에 귀하의 재 작성 규칙이 제대로 작동

답변

3
여기에 그냥 추측

하지만 오류 메시지에서^인 test.html의 $의 /apeace/index.html

같이한다 RewriteRule을 만들기 위해 시도 할 수 있습니다,이 http://localhost/home/apeace/public_html/index.html

+0

이것은 효과가 있습니다. 정말 고맙습니다. 나는 그게 그렇게 간단하지 않다고 믿을 수 없다. – apeace

1

. test.html에 가서 "test.html"을 찾을 수 없다고 말하면 다시 쓰기 규칙이 잘못되었을 수 있습니다.

그래서 이것은 잘못된 파일이나 디렉토리 이름 어딘가 다른 것이 든 다른 설정이 잘못된 것입니다. 당신이 간과하는 기본적인 것이 없는지 확인하십시오.

하지만 질문에 대한 답변 (특히 제목)에 htaccess가 정상입니다.

+0

에'http://localhost/apeace/test.html를 번역하는 것 같다 죄송합니다. PI가 index.html이 존재하고 test.html이 존재하지 않았기 때문에 PI는 /test.html에 액세스하고 /index.html에 액세스하려고했습니다. 그러나 다른 신사의 대답이 옳았다는 것이 밝혀졌습니다. – apeace

관련 문제