2016-06-10 2 views
0

localhost에서는 완벽하게 작동하지만 클라이언트 라이브 서버에서는 작동하지 않습니다. 이 코드를 사용하여 URL을 다시 작성했습니다.localhost에서 작동중인 라이브 서버의 .htaccess 문제를 해결하는 방법은 무엇입니까?

<IfModule mod_rewrite.c>   
RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^([^\.]+)$ $1.html [NC,L] 
</IfModule> 

그러나 작동하지 않습니다.

+0

매우 광범위한 질문을. 실제 문제는 무엇입니까? 정상 404 Not Found가 표시됩니까? mod_rewrite가 사용 가능한지 확인하십시오. –

+0

안녕하세요, 마이크, 귀하의 의견을 보내 주셔서 감사합니다. 나는 그것을 얻지 못하고있다. 어떤 링크를 클릭하면 http://error404.000webhost.com/과 같은 나를 보여줍니다? –

+0

기술적으로 똑같습니다. 000webhost는 404s에 대해 자신의 페이지를 사용합니다. 이는 해당 제품을 판매하는 방법입니다. mod_rewrite가 활성화되지 않았거나 단순히 htaccess 파일 사용을 허용하지 않을 가능성이 있습니다. –

답변

1

000webhost 웹 사이트의 FAQ entry에 따르면 가상 홈 사용자 디렉터리를 사용하므로 RewriteBase을 추가해야합니다.

그래서, RewriteEngine 아래에 해당 지시문을 추가 :

<IfModule mod_rewrite.c>   
    RewriteEngine On 
    RewriteBase/
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteRule ^([^\.]+)$ $1.html [NC,L] 
</IfModule> 
+0

당신은 옳습니다. 이 무료 웹 호스팅 사이트에서 작동하지 않습니다. 그들은 htaccess 파일의 사용을 허용하지 않기 때문에. 하지만 다른 구매 호스팅을 시도하고 완벽하게 작동합니다. –

+0

그들은 htaccess 파일을 허용합니다 ...하지만 어쨌든, 당신이 호스팅을 구입 한 것을 기쁘게 생각합니다, 그것은 더 좋은 방법입니다. ;-) –

관련 문제