mod_rewrite는 .htaccess 파일에서 작동하지만 apache2.conf에서는 작동하지 않습니다

StackOverflow https://stackoverflow.com/questions/1808608

  •  05-07-2019
  •  | 
  •  

문제

테스트로 .htaccess 파일에 다음을 가지고 있습니다.

RewriteEngine on
RewriteRule ^(.*)$ /backend/$1

이것은 예상대로 작동합니다. Apache2.conf에서 다음과 함께 로깅을 다시 작성할 수있었습니다.

<IfModule mod_proxy.c>
    RewriteLog "/tmp/REWRITE.log"
    RewriteLogLevel 9
</IfModule>

로그 파일이 생성되고 로그는 예상대로 디버그 정보입니다. 그러나 .htaccess 파일을 삭제하면 다음과 같이 apache2.conf 지시문을 변경하고 Apache를 다시 시작하여 전 세계적으로 동등한 작업을 수행하면 작동하지 않습니다.

<IfModule mod_proxy.c>
    RewriteLog "/tmp/REWRITE.log"
    RewriteLogLevel 9
    RewriteEngine on
    RewriteRule ^(.*)$ /backend/$1
</IfModule>

우분투에서 Apache/2.0.55를 사용하고 있습니다.

돕다!

도움이 되었습니까?

해결책

이것을 시도해 보셨습니까?

    RewriteEngine on
    RewriteRule ^(.*)$ /backend/$1

<IfModule mod_proxy.c>
    RewriteLog "/tmp/REWRITE.log"
    RewriteLogLevel 9

</IfModule>

이런 식으로 다시 작성할 수 있었지만 로그는 작동하지 않았으므로 mod_proxy.c에서 문제가 발생했습니다.

다른 팁

RewriteEngine을 켜는 것을 고려 했습니까? ~ 전에 다른 재 작성 지침이 있습니까?

Rewriterule 지시문이 특정 서버 정의에 포함되어 있습니까? 직장에 가상 서버가 있습니까?

내가 이것을 묻는 이유는 당신이 이것이 작동한다고 말하기 때문입니다. .htaccess 디렉토리 특정 파일; 공식적으로 문서에 다시 작성된 것은 Rewriterule이 서버 구성, 가상 호스트, 디렉토리, .htaccess에 적용 할 수 있다고 말합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top