На моем веб-сервере настроено несколько сайтов, и все они размещены в ~/sites/
, вне корня документа apache (~/www
), следующим образом:
+-~/
+-sites/
+-project1/
| +-system/
| +-application/
| +-public_html/
| +-images/
| +-css/
| +-index.php
+-project2/
| +-system/
| +-application/
| +-public_html/
| +-images/
| +-css/
| +-index.php
Я приказываю сделать сайты доступными через Интернет. Я создаю символическую ссылку в ~/www/
, как показано ниже:
+-~/
+-www/
+-project1 -> ~/sites/project1/public_html
+-project2 -> ~/sites/project2/public_html
С этой настройкой я получаю domain.com/project1
и domain.com/project2
указывая на мой ~/sites/projectx
каталоги и могут легко изменить их местоположение, чтобы перевести сайт в автономный режим.
У меня проблема в том, как разместить domain.com
вне корня документа; Я не могу настроить символическую ссылку, как другие, потому что символическая ссылка должна быть ~/www/
который, очевидно, нельзя использовать.
TL; DR; Я хочу настроить ~/sites/domain/public_html
быть обслуженным, когда domain.com
запрашивается.
Создайте его как виртуальный хост. Я все время это делаю. У меня корневой каталог документов / var / www / HTML, но я размещаю некоторые сайты в / home /
Вы можете использовать виртуальный хост. Вот вам пример:
DocumentRoot "/home/httpd/sites/site1"
ServerName site1.com
<Directory "/home/httpd/sites/site1">
Options -Indexes +FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
Не забудьте включить файл в свой httpd.conf