Лучший способ запустить два разных веб-сайта на локальном хосте [закрыто]

Я бы хотел запустить два веб-сайта с XAMPP для Linux на моем компьютере:

  • Один для разработки моего общедоступного веб-сайта
  • Один для моей диссертации (управление библиографией, рефераты, ...)

Они совершенно не связаны, и я не хочу, чтобы один работал в субдомене другого, и я не хочу связываться с файлом .htaccess.

Как лучше всего это сделать?

2
задан 30 August 2014 в 10:55
4 ответа

Просто настройте свой vhosts, как:

Name VirtualHost 127.0.0.1
<VirtualHost *:80>
   DocumentRoot /www/thesis
   ServerName thesiswork
</VirtualHost> 

<VirtualHost test2:80>
   DocumentRoot /www/test2
   ServerName test2
</VirtualHost>

<VirtualHost test3:80>
   DocumentRoot /www/test3
   ServerName test3
</VirtualHost>

Затем в Вашем/etc/hosts файле просто делают следующее:

example.com    127.0.0.1
test2.example.com    127.0.0.1
test2.example.com   127.0.0.1
test2               127.0.0.1
test3               127.0.0.1

Тем путем можно просто перейти в: example.com или test3.example.com (после внесения изменений конфигурации в хосты, удостоверяется, что Вы перезапускаете сети.

4
ответ дан 3 December 2019 в 09:24

Я рекомендую основанный на порте vhosts.conf как это (это - полный vhosts.conf):

NameVirtualHost *:80

<virtualHost *:80>
DocumentRoot "/var/www/"
ServerName localhost
ServerAdmin admin@localhost
</VirtualHost>

Listen 61 #use random free port number
<virtualHost *:61>
DocumentRoot "/var/vhosts/thesis/"
ServerName asdf
ServerAdmin admin@asdf
</VirtualHost>

Можно затем назвать страницу с http://localhost/ и вещь тезиса с http://localhost:61/

Преимущество основанных на порте по основанному на имени виртуальному хостингу состоит в том, что Вам не нужен домен, и Вы не должны смешивать со своим файлом hosts, который я нахожу, чтобы быть довольно "грязным".

Удостоверьтесь, что Вы предоставляете доступ к каталогу в этом, Вы хотите разместить свой файл тезиса в, например, в Вашем httpd.conf, или просто добавить его к Вашему vhosts.conf:

<Directory "/var/vhosts/">
Order Deny,Allow
Allow From All
AllowOverride All
</Directory>
1
ответ дан 3 December 2019 в 09:24

Необходимо использовать основанный на имени виртуальный хост. Полное изложение перечислено здесь: http://httpd.apache.org/docs/current/vhosts/name-based.html

Основная идея состоит в том, что Вы настроите значение по умолчанию virtualhost на localhost с чем-то вроде этого:

<VirtualHost _default_:*>
   DocumentRoot /www/default
</VirtualHost> 

Затем для Вашего сайта тезиса Вы могли настроить другой virtualhost

<VirtualHost *:80>
   DocumentRoot /www/thesis
   ServerName thesiswork
</VirtualHost> 

На Вашем локальном компьютере необходимо было бы затем отредактировать/etc/hosts файл для включения "thesiswork", указав 127.0.0.1

0
ответ дан 3 December 2019 в 09:24

127.0.0.0/8 означает, что 127.0.0.2 и 127.0.0.3 и 127.0.0.4 и... до 127.254.254.254 или что-то как этот - доступные IP-адреса для использования. Таким образом, если имя базировалось, виртуальные хосты не достаточно хороши, у Вас мог бы быть differerent localhost как IP-адреса для каждого веб-сайта.

1
ответ дан 3 December 2019 в 09:24

Теги

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