몇 가지 간단한 규칙이 포함 된 작은 htaccess 파일이 있습니다.리디렉션이 올바르게 작동하지 않습니다.
RewriteEngine On
RewriteCond %{HTTP_HOST} !^(www|serv)\.(.*\-.*)\.com [NC]
RewriteRule ^(.*) http://www.maindomain.com%{REQUEST_URI} [L,R=301]
을 나는 URI에서 폴더 SERV을 제거 할 두 번째 단계 :
먼저 내가 리디렉션 또는 메인 도메인의 시작에서 www가을 추가 할 수 있습니다.
나는 다음과 같은 한 폴더 구조 :
www.maindomain.com
- SERV/
나는 다음과 같은 규칙을 가지고 할 수있는 주요 웹 페이지의
RewriteCond %{HTTP_HOST} ^serv.* [NC]
RewriteCond %{REQUEST_URI} !^/serv.* [NC]
RewriteRule ^(.*) /serv/$1 [L,QSA]
이 지금까지 작동하지만, 내 자신의 재 위의 조건과 규칙 규칙 충돌을 쓰기 :
RewriteEngine On
RewriteBase/
RewriteRule ^search/$ search.php [L,QSA]
그래서 내 URI가 가끔 www.maindomain.de/search/search 같은 것을 얻는다. RewriteEngine On
RewriteCond %{HTTP_HOST} !^(www|serv)\.(.*\-.*)\.com [NC]
RewriteRule ^(.*) http://www.maindomain.com%{REQUEST_URI} [L,R=301]
RewriteCond %{HTTP_HOST} ^serv.* [NC]
RewriteCond %{REQUEST_URI} !^/serv.* [NC]
RewriteRule ^(.*) /serv/$1 [L,QSA]
RewriteEngine On
RewriteBase/
RewriteRule ^search/$ search.php [L,QSA]
어떤 문제가 : 여기
내 전체 htaccess로 파일입니다? 나는 실수를 찾지 못한다. 하위 도메인이 SERV하지 않고 URI가 하위 도메인이 WWW로 리디렉션됩니다 SERV을 포함하지 않는 경우
는 또한 나는 가능한 경우 알고 싶어요.
귀하의 RewriteRule의로 변경
수정에 작동하지 않을 것 같다. 참조 % 1은 (는) 해결되지 않습니다. 메인 도메인을 직접 호출하면 리디렉션이 너무 많다는 오류가 발생합니다. – CSchulz
다시 시도하고 www. 결과는 무한 루프가됩니다. http : //wiki.../NotTheWikiFolder에서 리디렉션됩니다. – CSchulz
죄송합니다 - 오타가 있었으며 위에 고정되어있는 ['^ \.] 기간을 빠뜨리는 것을 잊었습니다. –