Назад | Перейти на главную страницу

как определить несколько корней документов в apache

Я использую относительный путь корня для всех ссылок в файлах PHP, например "url (/img/myimj.jpg)"

На хост-сервере Godaddy это работает нормально.

Но я хочу запустить его на своем локальном хосте. (Ubuntu 9, Apache 2, PHP 5)

Например, у меня мой сайт хранится в var / www / siteone, другой - в var / www / sitetwo,

а корневой каталог установлен на «var / www».

Теперь проблема в том, что href = "/" ссылается не на var / www / siteone, а на var / www /.

Есть ли способ определить разные корни документов для разных сайтов?

Я только новичок в веб-разработке, не уверен, может ли это сделать Vitual Host.

Может кто-нибудь объяснить это?

Спасибо за ответы.

Мне нужно добавить новый vitualhost в этот файл / etc / apache2 / sites-available / default

Но я все еще не понимаю, как это сделать для localhost? IP и порт по умолчанию всегда 127.0.0.1:80

Лично я часто использую VirtualDocumentRoot:
http://httpd.apache.org/docs/2.0/mod/mod_vhost_alias.html#virtualdocumentroot

С помощью этой директивы вы, например, можете:

VirtualDocumentRoot /var/www/%-2/%-3/

% -2 - это «2-й элемент справа», поэтому он показан на сайте instance.com.
% -3 - третий элемент справа, так что это foo в foo.exemple.com

Затем вам просто нужно создать папки, соответствующие вашим именам хостов:
localhost / будет:

/var/www/localhost/_/

Обратите внимание на _, где нет значения (я всегда делаю символическую ссылку, например _ -> www)

Так
www.site1.com будет / var / www / site1 / www /
www.site2.com будет / var / www / site2 / www /
localhost будет / var / www / localhost / _ /

тогда развлекайтесь с символическими ссылками :-)

Каждый <VirtualHost> раздел может иметь свой DocumentRoot директива.