와일드 카드 하위 도메인을 실행 중입니다. 사이트의 목표는 가상 하위 도메인을 실행하는 것입니다. 그 기능은 메인 사이트의 파일 이 호출 될 때 깨끗한 URL을 위해 다시 쓰여지는 것입니다. 하지만 같은 파일을 하위 디렉토리 (예 : xyz.doamin.com/my-file.php)과 같은 형식으로 호출 할 때는 domain.com/my-file과 같은 subdoamin 인수로 해당 파일을 호출하는 것처럼 다시 작성해야합니다. PHP? var = xyz. 현재 파일 호출에 대해 수행 한 작업은 다음과 같습니다.특정 인수를 사용하여 하위 도메인 및 기본 사이트에 대한 파일 요청을 리디렉션합니까?
Options +FollowSymLinks
RewriteEngine on
## Redirecting all non-www domains to www.domain.com
RewriteCond %{HTTP_HOST} ^domain.com [NC]
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301,NC,L]
RewriteCond %{HTTP_HOST} !^www\.domain\.com$ [NC]
RewriteCond %{HTTP_HOST} ^(.*)\.domain\.com$ [NC]
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^(.*)$ http://www.domain.com%{REQUEST_URI}?var=%1 [L]
RewriteCond %{HTTP_HOST} !^www\.domain\.com$ [NC]
RewriteCond %{HTTP_HOST} ^(.*)\.domain\.com$ [NC]
RewriteCond %{QUERY_STRING} !^$
RewriteRule ^(.*)$ http://www.domain.com%{REQUEST_URI}?%{QUERY_STRING}&var=%1 [L]
RewriteCond %{HTTP_HOST} !^www\.domain\.com$ [NC]
RewriteCond %{HTTP_HOST} ^(.*)\.domain\.com$ [NC]
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^(.*)$ http://www.domain.com/index.php?subdomain=%1 [L]
RewriteCond %{HTTP_HOST} !^www\.domain\.com$ [NC]
RewriteCond %{HTTP_HOST} ^(.*)\.domain\.com$ [NC]
RewriteCond %{QUERY_STRING} !^$
RewriteRule ^(.*)$ http://www.domain.com%{REQUEST_URI}?%{QUERY_STRING}&subdomain=%1 [L]
파일 호출에 대해 500 개의 내부 오류가 발생했습니다.
로그인이 줄 :: mod_rewrite를을 가지고 오류를보십시오. 구성 오류가 있다고 가정합니다. 필요한 경우 제한을 늘리려면 'RewriteOptions MaxRedirects'를 사용하십시오. – HardCode
네, 규칙 세트 4가됩니다. 'HTTP_HOST'는 절대로 변경되지 않으므로 결과에 따라 계속 일치하게됩니다. 내가 말했듯이 너는 그것을 완전히 버리는 것이 가장 좋다. – Sodved
'@ Sodved' 수정 된 코드를 참조하십시오. 이 뜻 이니? – HardCode