я только что унаследовал сервер ubuntu 10.04, на котором уже запущен tomcat на порту 80.so apache 2 /etc/apache2/ports.conf
есть Listen 8858.
Я указал свой поддомен, скажем, admin.domain.com на IP-адрес этого поля, поэтому xx.xx.xx.xx:8858
и admin.domain.com:8858
оба отправляют мне в корневой файл "все работает"
так что я создал под /var/www/vhots/admin.domain.com/htdocs
и /var/www/vhots/admin.domain.com/log
моя первая конфигурация выглядит ниже, и в основном после перезагрузки и перезапуска apache2 выдает мне эту ошибку
VirtualHost *: 8858 - смешивание * портов и не * портов с адресом NameVirtualHost не поддерживается, продолжение с неопределенными результатами httpd (pid 7466?) Не работает
###/etc/apache2/apache2.cong
NameVirtualHost *
#NameVirtualHost *:8858
<VirtualHost *>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog /var/log/apache2/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/apache2/access.log combined
ServerSignature On
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</Virtualhost>
###/etc/apache2/sites-available/admin.domain.com
<VirtualHost *:8858>
ServerAdmin sensei@domain.com
ServerName admin.domain.com
ServerAlias www.admin.domain.com
DocumentRoot /var/www/vhots/admin.domain.com/htdocs
<Directory /var/www/vhosts/admin.domain.com/htdocs>
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Order allow,deny
allow from all
</Directory>
ErrorLog /var/www/vhosts/admin.domain.com/log/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/www/vhosts/admin.domain.com/log/access.log combined
ServerSignature On
</VirtualHost>
Итак, прочитав этот Я раскомментировал NameVirtualHost *: 8858, который я изначально поместил туда, что заставило меня иметь как NameVirtualHost *, так и NameVirtualHost *: 8858 теперь у меня есть предупреждающее сообщение, но затем сервер отказывается запускаться
NameVirtualHost *: 8858 не имеет VirtualHosts httpd (pid 27536?) Не запущен [предупреждение] NameVirtualHost *: 8858 не имеет VirtualHosts [ошибка]
Как мне его поднять? Спасибо, что прочитали это
Если у вас уже есть Tomcat, работающий на порту 80, вы не можете подключить Apache к тому же порту. URL-адрес HTTP без порта, например http://admin.domain.com, предполагается порт 80.
Итак, чтобы сделать ваш сайт доступным без порта (: 8858), вам нужно переместить Tomcat на другой порт.
Есть другое решение, если у вас есть 2 IP-адреса на одном сервере, например x.x.x.1 и x.x.x.2. Затем укажите Tomcat на первый адрес, а Apache на второй:
# Apache configuration
NameVirtualHost x.x.x.2:80
<VirtualHost x.x.x.2:80>
#Your site configuration
</virtualHost>
В этом случае не забудьте правильно переназначить свои записи DNS.