Apache2 VirtualHost автоматический субдомен

Сделайте, чтобы клиент заплатил кому-то еще для регистрации домена. Частная регистрация все еще имеет Ваше имя где-нибудь, что можно найти, платя кому-то, кого наличные в размере 40$ каждый год не делают.

4
задан 14 February 2010 в 17:02
2 ответа

Лучший способ сделать это состоял бы в том, чтобы поместить ссылки на все сайты в определенном каталоге и сделать что-то вроде этого:

<VirtualHost *:80>
        RewriteEngine On
        RewriteMap lowercase int:tolower
        # if already rewitten and we have the right path, stop right here
        RewriteRule ^(/where/your/sites/are/[^/]+/.*)$ $1 [L]
        RewriteRule ^(.+) ${lowercase:%{SERVER_NAME}}$1 [C]
        RewriteRule ^(www\.)?([^/]+)/(.*)$ /where/your/sites/are/$2/$3 [L,E=VHOST_ROOT:/where/your/sites/are/$2/]
</VirtualHost>
2
ответ дан 3 December 2019 в 03:51
  • 1
    Я can' t помещают все сайты в один каталог - важно, чтобы у каждого пользователя была папка с их собственными сайтами. –  Niklas H 14 February 2010 в 17:02
  • 2
    That' s, почему я сказал " ссылки на весь sites":-) –  mat 14 February 2010 в 18:52
  • 3
    Извините - я didn' t видят ту часть ссылки. Я считал его как " поместите все сайты в определенный directory":) –  Niklas H 14 February 2010 в 22:40

Можно использовать массовый виртуальный хостинг. В Вашем случае Вы не сможете использовать его в основной апачской конфигурации из-за '/username /' в пути, но можно создать virtualhost на пользователя, затем используют массовый виртуальный хостинг в виртуальном хосте.

Пример:

<VirtualHost *:80>
ServerName domain.tld
ServerAlias *.domain.tld
VirtualDocumentRoot /var/www/user1/%0/
</VirtualHost>

<VirtualHost *:80>
ServerName domain2.tld
ServerAlias *.domain2.tld
VirtualDocumentRoot /var/www/user2/%0/
</VirtualHost>

...

С модификацией переписывают Вас, может их делать domain.tld для перезаписи для указания на www каталог

1
ответ дан 3 December 2019 в 03:51

Теги

Похожие вопросы