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

Какая правильная конфигурация для виртуального хоста ubuntu apache2 на порту, отличном от 80

я только что унаследовал сервер 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.