2012-03-27 3 views
0

Я довольно новичок в целом .htaccess, но у меня есть вопрос. Я хотел бы создать систему, чтобы все, что было напечатано до того, как домен переписывается в папку на веб-сайте. Для того, чтобы сделать его более ясным, что это пример:Домен переписывается в папку

, если пользователь, например:

example1.example.com 

он должен получить сайт образуют корневую/example1/папку.

, если пользователь, например:

klsdjf.example.com 

он должен получить сайт образуют корневую/klsdjf/папку.

Надеюсь, это ясное объяснение того, чего я хочу достичь.

Thanx,

+0

См. Это http://stackoverflow.com/questions/1456956/redirect-subdomain-to-folder –

+0

Спасибо за быстрый ответ, но когда я имплементирую это, он дает мне эту ошибку: кроме того, была обнаружена ошибка 403 Forbidden пытаясь использовать ErrorDocument для обработки запроса. – jorveld

ответ

0

Из моего понимания, вы хотели бы правила перезаписи из подстановочных субдомен должен быть направлен в корневой папке.

так,

*.example.com => example.com/* 

Шаг 1. Настройте DNS

Во-первых, вы должны убедиться, что ваш DNS хост настроен правильно. Вы должны убедиться, что ваш домен принимает подстановочный знак (*), который указывает на IP-адрес вашего хоста. Это должна быть простая запись A.

Шаг 2. Расскажите Apache для лечения субдоменов Иных слов

После этого не будет сделано, вы должны сказать Apache для лечения поддоменов по-разному.

В httpd.conf, обратите внимание на то, что выглядит следующим образом:

ServerAlias www.example.com example.com 

И изменить его к этому:

ServerAlias www.example.com example.com *.example.com 

example.com, конечно, быть имя вашего сайта ,

Шаг 3. Фактические правил переписывания

Тогда вот ваш .htaccess:

Options +FollowSymLinks 
    Options +Indexes 
    RewriteEngine On 
    RewriteBase/
    RewriteCond %{HTTP_HOST} !www.example.com$ [NC] 
    RewriteCond %{HTTP_HOST} ^(www.)?([a-z0-9-]+).example.com [NC] 
    RewriteRule (.*) %2/$1 [L] 

Это должно работать.

Смежные вопросы