2012-06-29 5 views
4

laravel 프레임 워크에 사용할 수 있도록 깨끗한 ​​URL을 얻는 데 이미 2 시간을 낭비했기 때문에 여기에 다소 미쳐 가고 있습니다.htaccess가 깨끗한 URL을 아파치에서 읽을 수 없습니까?

저는 Mac에 있으며 XAMPP 설정이 있습니다. Loadmodule mod_rewrite가 주석 처리되었으며 php_info()는 mod_rewrite 모듈이로드되었다고 말합니다.

나는 그것이 나에게 (404)

을 제공 domain.com/account을 서핑 할 때 laravel 프레임 워크의 공용 폴더에 내 htaccess로 파일이 여전히 세척 과정 URL의 코드가 포함되어 있습니다 (자신의 웹 사이트에 명시된 바와 같이)하지만

laravel 프레임 워크 폴더는 가상 호스트로 실행됩니다.

무엇이 잘못 될 수 있습니까?!

<IfModule mod_rewrite.c> 
    RewriteEngine on 

    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 

    RewriteRule ^(.*)$ index.php/$1 [L] 
</IfModule> 
+0

IfModule 태그를 제거하십시오. 그렇게하고 mod_rewrite를 사용하지 않으면 500 오류가 발생합니다. Concordus와 같은 RewriteBase를 추가하는 것도 좋은 생각입니다. – Gerben

답변

9

Loadmodule mod_rewrite의 주석 처리가 해제되어 있는지 확인하십시오.

가상 호스트가 .htaccess가 해당 작업을 수행 할 수 있도록 AllowOverride를 적절하게 설정했는지 확인하십시오. 좋은 지침의

한 예는 다음과 같습니다

<Directory "/some/absolute/path/htdocs"> 
Options Indexes Includes FollowSymLinks MultiViews 
AllowOverride AuthConfig FileInfo 
Order allow,deny 
Allow from all 
</Directory> 

좋은 후두둑은 무엇 당신이하려고에 대한 htaccess로에 대해 다음과 같이하십시오

당신이 무엇을하고 있는지에
<IfModule mod_rewrite.c> 
    RewriteEngine On 
    RewriteBase/
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(.*)$ index.php?/$1 [L] 
</IfModule> 

아주 가까이 .

아파치 서버를 다시 시작하십시오.

+4

가상 호스트의 AllowOverride가 none으로 설정되었습니다. 고맙습니다. – Boyd

+1

NP ... 나는 몇 년 전에 어려운 길을 배워야했다. 나는 고통을 느낀다. –

+0

그것은 나를 위해 작동하지 않았다 ... 나는 정확히 같은 설정을 가지고있다. 그 밖의 무엇이 일할 수 있습니까? –

관련 문제