Поддомен Apache Redirect с 2 разных портов

Доброго времени суток люди

Я использую веб-сервер на порту 80 и почтовый сервер на порту 82 на том же сервере через домашний ADSL.

У меня есть основной домен example.com в качестве A-записи с www.example.com в качестве CNAME для example.com. Я настроил apache так, чтобы оба домена использовали оба порта 80 и 82 для перенаправления на почтовый сервер.

example.com:80 --> mail server
example.com:82 --> mail server
www.example.com:80 --> mail server
www.example.com:82 --> mail server

Это все "работает" как надо и как я хочу - думаю ...

Теперь у меня есть поддомен exclude.example.com, с которым я борюсь. Я пытаюсь настроить как exclude.example.com для доступа к веб-серверу как через порт 80, так и через порт 82.

exclude.example.com:80 --> web server
exclude.example.com:82 --> web server

но в настоящее время exclude.example.com:82 все еще выполняет перенаправление на почтовый сервер.

Ниже моя конфигурация apache

<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
RewriteEngine on
#RewriteCond %{HTTP_HOST} example.com [NC]
RewriteCond %{HTTP_HOST} !exclude.example.com [NC]
RewriteRule ^(.*)$ http://www.example.com:82 [L,R=301]
</VirtualHost>

<VirtualHost *:80>
ServerName exclude.example.com
ServerAlias exclude.example.com
DocumentRoot "${INSTALL_DIR}/www/exclude/"
<Directory "${INSTALL_DIR}/www/exclude/">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Require local
Require all granted
</Directory>  
</VirtualHost>

<VirtualHost *:82>
ServerName exclude.example.com
Redirect / https://www.example.com
</VirtualHost>
Как установить LAMP Stack 1/2 на Azure Linux VM
Как установить LAMP Stack 1/2 на Azure Linux VM
В дополнение к нашему предыдущему сообщению о намерении Azure прекратить поддержку Azure Database для MySQL в качестве единого сервера после 16...
0
0
161
2

Ответы 2

Вы также должны добавить серверы к последней записи виртуального хоста, см. Ниже.

ServerAlias exclude.example.com

Также вы перенаправляете на https://www.example.com, вместо этого вы должны настроить это также, поскольку у вас есть setup *: 80 virtual вместо перенаправления.

к сожалению, он все еще перенаправляется на почтовый сервер

Jaco Hendriks 14.09.2018 21:24

и веб-сервер, и почтовый сервер не могут работать на одном и том же порте на одном компьютере. Сначала вам нужно исправить это.

mdeora 16.09.2018 10:49

Если веб-сервер прослушивает порт 80, в то время как почтовый сервер прослушивает порт 82, перенаправление apache не будет работать, поскольку apache не прослушивает порт 82. Также не может быть двух служб, использующих один и тот же порт.

Другие вопросы по теме