2011-05-07 3 views
1

내 데스크톱 버전의 웹 사이트에 처음으로 CodeIgniter를 설치했는데 AllowOverride를 None에서 All로 변경 한 후 약간의 문제가있어 다음 .htaccess 규칙 작업 : - domain.com/m에서 컨텐츠를 가져옵니다초급 .htaccess 질문 (코드 관련자 관련)

DirectoryIndex index.php 
RewriteEngine on 
RewriteCond $1 !^(index\.php|images|css|js|m|robots\.txt|favicon\.ico) 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ ./index.php/$1 [L,QSA] 

문제는 내가 m.domain.com에있는 웹 사이트의 모바일 버전입니다. AllowOverride가 'None'일 때, 이것은 완벽하게 작동했습니다. 이제 'All'로 변경하고 위의 .htaccess 파일을 구현했습니다. 하위 도메인은 더 이상 작동하지 않으며 "Apache 서버 테스트 페이지"html 파일이 표시됩니다.

누구든지 문제의 원인을 파악할 수 있습니까?! 감사!

답변

1

왜 vhost conf에 퍼가기 만하고 AllowOverride None으로 돌아갈 수있을 때 하나의 htaccess 파일만으로 AllowOverride All을 할 수 있습니까?

보조 노트 AllowOverride는 일반적으로 아무 것도 시도하지 않는 것입니다.

예 :

<VirtualHost *:80> 
    ServerAlias yourdomain.com 
    DocumentRoot /var/www/ 
     <Directory "/var/www/folder"> 
       RewriteEngine On 
       RewriteRule XXXXXX 
     </Directory> 
     <Directory "/var/www/another"> 
       RewriteEngine On 
       RewriteRule XXXXXX 
     </Directory> 
</VirtualHost> 
+0

죄송합니다 - 나는 비교적 새로운 해요. vhost conf를 사용하여 하나의 디렉토리에 오버라이드를 부여하는 방법을 모르지만 지금은 그것을 조사하겠습니다. – Walker

+0

문제는 없지만 실제 예를 사용하여 수정하겠습니다. – c0mm0n

+0

모든 도움에 감사드립니다 - 나는 정말로 감사합니다. 티 – Walker