우분투에서 아파치에서 mod_rewrite를 어떻게 활성화합니까?


13

Ubuntu 10.04에서 Apache로 mod_rewrite를 어떻게 활성화합니까?

나는 복사 시도 rewrite.load에서 /etc/apache2/mods-availableetc/apache2/mods-enabled하지만, 작동하지 않았다.

답변:


20

이것을 시도한 sudo a2enmod rewrite다음 아파치를 다시 시작하십시오.


4

a2enmod를 사용하는 Obsidian의 대답은 올바른 솔루션입니다. andol의 방법은 효과가 있지만 업그레이드시 중단 될 수 있습니다. a2enmod가하는 일은 단순히 심볼릭 링크를 만드는 것이므로 다음 두 가지가 동일하고 적절한 솔루션입니다.

  ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/

또는

  a2enmod rewrite

그러나 a2enmod는 다른 유형의 파일을 찾고 일부 파일에는 .conf 파일이있을 수 있습니다. 이 명령을 배우지 않을 이유는 없지만 백그라운드에서 무슨 일이 일어나고 있는지 아는 것이 중요합니다.

파일을 복사하면 향후 관리자가 매우 마음에 들지 않을 것입니다. :)


글쎄, 그것은 단지 로컬 테스트를위한 것이므로 큰 문제는 아닙니다. 그러나 나중에 a2enmod는 더 쉽습니다.
Nathan Osman

2

사실, 잘못 솔루션의 친절 복사하는 동안 rewrite.load을 에서 ./mods-available/./mods-enabled/ 일을해야합니다. 나중에 아파치를 다시 시작한 것을 기억하십니까?

어떤 경우에는, ./mods-enabled/는 일반적으로 파일을 대응하는 심볼릭 링크가 포함되어야 ./mods-available/을 . 이것은 Obsidian이 언급했듯이 a2enmod 및 a2dismod 명령으로 가장 쉽게 처리됩니다.

모듈을 활성화하는 것 외에도 다시 쓰기를 활성화해야합니다. 당신이 당신의 쓰기 전에 한다 RewriteCond를 : s와 RewriteRule의 :이야는 "이 있어야만 한다 RewriteEngine에를 그 구성과 관련".


그것도 작동합니다. mods-enabled에서 심볼릭 링크에 대한 올바른 권한을 설정하십시오 ... 그렇지 않으면 머리카락이 빠질 것입니다.
Nathan Osman
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.