VHost & Forward 하위 도메인 만들기


8

소굴

웹 애플리케이션의 www가 아닌 ​​www를 www로만 리디렉션하는 간단한 .htaccess 파일이 있습니다. 이제 내가하고 싶은 것은

  1. http : //subdomain.mydomain.tld 와 같은 새 가상 호스트 만들기
  2. 해당 하위 도메인 으로 오는 사람이 app / webroot / subdomain 과 같은 내 앱의 폴더 로 리디렉션되도록

내 현재 .htaccess는 다음과 같습니다

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteCond %{HTTP_HOST} !^www\.mydomain\.tld [NC]
    RewriteRule ^(.*)$ http://www.mydomain.tld/$1 [R=301.L]
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ app/webroot/$1 [QSA,L]
</IfModule>

어떻게해야합니까? .htaccess 파일에서이 작업을 모두 수행 할 수 있습니까? 아니면 GoDaddy를 엉망으로 만들어야합니까? 오히려 이해가된다면 앱 에서이 작업을 수행하지 않습니다.

우분투 10.04 + Apache 2.2.14-5를 실행 중입니다.

감사

답변:


18

.htaccess 파일에 넣을 내용은 다음과 같습니다.

RewriteEngine on
# redirect mydomain.tld to www.mydomain.tld
RewriteCond %{HTTP_HOST} ^mydomain\.tld [NC]
RewriteRule ^(.*)$ http://www.mydomain.tld/$1 [R=301,L]

# default website
RewriteCond %{HTTP_HOST} ^www\.mydomain\.tld$ [NC]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ app/webroot/$1 [NC,QSA,L]

# subdomain to folder
RewriteCond %{HTTP_HOST} ^(sub|subfolder)\.domain\.com$ [NC]
RewriteCond %1 !^www$ [NC]
RewriteRule ^(.*)/?$ http://www.domain.com/%1/$1 [NC,QSA,L]

감사합니다. 해당 하위 도메인에 대해 먼저 호스트를 설정해야합니까?

원하는 경우 WWW와 동일한 DocumentRoot를 사용하여 언제든지 호스트를 호스트 할 수 있습니다. www vhost의 ServerAlias를 변경하여 도메인을 추가 할 수도 있습니다 (예 : ServerAlias ​​domain.com www.domain.com sub.domain.com).

죄송합니다. apache2가 포함 된 n00b입니다. 그래서, 2 가지-1. 코드에 따라 고정 된 서브 도메인 만 허용하고 ([a-z0-9]), ^ (sub)로 변경해야합니까? 2. 호스트를 다시 설정하려면 어떻게합니까 (너무 n00b입니까? 죄송합니다)?

1) 업데이트 된 답변을 봅니다. 2) 하위 도메인 항목을 작성 했습니까? www와 같은 장소를 가리 켰습니까?

1) 나는 그것을 쳐다보고 & 아직 하나의 변화를 찾을 수 없습니다, 나는 심각하게 길을 잃었습니까? 2) 그 .htaccess 파일에는 아무것도 없지만 내가 보여준 것입니다.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.