Отправленные часы идут в кругах после каждого руководства, которое я могу найти в сети.
Я хочу иметь два сайта, работающих на одном экземпляре apache, что-то вроде этого - 192.168.2.8/site1 а также 192.168.2.8/site2
Я крутился по кругу, но на данный момент у меня есть два файла conf в доступных "сайтах" (символически привязанных к сайтам), которые выглядят так:
<VirtualHost *:2000>
ServerAdmin [email protected]
ServerName site1
ServerAlias site1
# Indexes + Directory Root.
DirectoryIndex index.html
DocumentRoot /home/user/site1/
# CGI Directory
ScriptAlias /cgi-bin/ /home/user/site1/cgi-bin/
Options +ExecCGI
# Logfiles
ErrorLog /home/user/site1/logs/error.log
CustomLog /home/user/site1/logs/access.log combined
</VirtualHost>
и
<VirtualHost *:3000>
ServerAdmin [email protected]
ServerName site2
ServerAlias site2
# Indexes + Directory Root.
DirectoryIndex index.html
DocumentRoot /home/user/site2/
# CGI Directory
ScriptAlias /cgi-bin/ /home/user/site2/cgi-bin/
Options +ExecCGI
# Logfiles
ErrorLog /home/user/site2/logs/error.log
CustomLog /home/user/site2/logs/access.log combined
</VirtualHost>
http.conf выглядит так:
NameVirtualHost *:2000
NameVirtualHost *:3000
В настоящий момент Im получает эту ошибку -
[error] VirtualHost *:80 — mixing * ports and non-* ports with a NameVirtualHostaddress is not supported, proceeding with undefined results
Ports.conf выглядит так: (хотя ни один из руководства не упомянул о необходимости редактировать это)
NameVirtualHost *:80
Listen 80
<IfModule mod_ssl.c>
# If you add NameVirtualHost *:443 here, you will also have to change
# the VirtualHost statement in /etc/apache2/sites-available/default-ssl
# to <VirtualHost *:443>
# Server Name Indication for SSL named virtual hosts is currently not
# supported by MSIE on Windows XP.
Listen 443
</IfModule>
<IfModule mod_gnutls.c>
Listen 443
</IfModule>
Может ли кто-нибудь дать несколько простых инструкций для этого? Каждый найденный вами гид говорит, что он делает это по-другому, и каждый из них приводит к различным ошибкам. Я, очевидно, что-то делаю неправильно, но не нашел ясного объяснения того, что может быть.
Просто выберите один сайт, доступный на порту 2000, а другой доступный на порт 3000 (или что-то еще, просто выберите те порты для проверки).
Im работает сервер Ubuntu 12.04...
=============
ИЗМЕНИТЬ
Следующее другое "руководство"...
Теперь я установил это на доступных сайтах:
<VirtualHost *:80>
DocumentRoot "/home/user/site1/"
ServerName 192.168.2.10/site1
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/home/user/site2/"
ServerName 192.168.2.10/site2
</VirtualHost>
Установили это в apache2.conf:
ServerName site1
ServerName site2
Добавьте это к ports.conf:
Listen 192.168.2.10:80
==============
ИЗМЕНИТЬ
Теперь он работает, я помещал это в файл conf с поддержкой сайта:
<VirtualHost *:81>
DocumentRoot "/home/user/site1/"
ServerName site1
</VirtualHost>
<VirtualHost *:82>
DocumentRoot "/home/user/site2/"
ServerName site2
</VirtualHost>
У меня это в ports.conf:
Listen *:80
Listen *:81
Listen *:82
У меня это в apache2.conf:
ServerName site1
ServerName site2
Я не нашел это в каких-либо руководствах, которые я только что получил, работая через целый день проб и ошибок, поэтому я не знаю, является ли это хорошим решением. Но это по крайней мере работает, как я хочу это сейчас.