2012-12-18 4 views
1

.htaccess에 다음 행이 있습니다..htaccess RewriteRule 오류

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . index.php 

지금, 나는이 (가)의 .htaccess에 다음을 추가하고 싶습니다, 그래서 그래서 http://www.mydomain.com

RewriteCond %{HTTP_HOST} ^mydomain.com 
RewriteRule ^(.*)$ http://www.mydomain.com/$1 [R=301,L] 

모든 사용자를 리디렉션 할 수 있습니다, 난 그냥 내 기존의 .htaccess에 위의 코드를 추가 파일.

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{HTTP_HOST} ^mydomain.com 
RewriteRule ^(.*)$ http://www.mydomain.com/$1 [R=301,L] 
RewriteRule . index.php 

그러나 예상대로 작동하지 않습니다.

이 경우 어떻게 작성해야하는지 알려주십시오.

미리 감사드립니다.

+0

"그러나 예상대로 작동하지 않습니다." --- 당신은 무엇을 기대하고 정확히 그것이 어떻게 작동합니까? – zerkms

+0

http://mydomain.com에 액세스하는 사용자를 http : /www.mydomain.com으로 리디렉션합니다. – crzyonez777

+0

RewriteCond % {REQUEST_FILENAME}! -f RewriteCond % {REQUEST_FILENAME}! -d RewriteRule. index.php 이 줄은 작동하지 않습니다. – crzyonez777

답변

2

먼저 www 하위 도메인으로 리디렉션 한 다음 index.php 파일로 요청을 전달해야합니다. 이것을 시도하십시오 :

<IfModule mod_rewrite.c> 
    RewriteEngine on 
    RewriteCond %{HTTP_HOST} !^(www\.).+$ [NC] 
    RewriteRule ^(.*)$ http://www.%1/$1 [R=301,L] 

    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME} !-l 
    RewriteRule ^(.*)$ index.php?/$1 [L] 
</IfModule> 
+1

정말 고마워요! 그것은 일했다! – crzyonez777

+0

감사! 나는 그것을 점검했다! – crzyonez777