Оказывается, места, контролируемые ajp ProxyPass на моем сайте, обрабатываются до перенаправления VirtualHost, на что я обратил внимание, потому что Google проиндексировал более 25 тысяч страниц на ardownload.example.org -субдомен, который я никогда не использовал и не знаю, как они начали этот путь. У них также есть около 12 тысяч страниц с других поддоменов, которых «не существует». Я проследил проблему до того, что перенаправление не соблюдается, если оно попадает в прокси-местоположение ajp.
Желаемым результатом будет правильное перенаправление всех поддоменов на основной сайт с сохранением URL-адреса и строки запроса.
Текущий виртуальный хост с частично игнорируемым перенаправлением.:
<VirtualHost *:80>
ServerName example.org
ServerAlias *.example.org
RedirectPermanent / https://www.example.org/
</VirtualHost>
Прокси-сервер текущего местоположения, вызывающий ошибку.
<Location /tomcatlocation/>
ProxyPreserveHost on
ProxyPass ajp://127.0.0.1:8009/tomcatlocation/ retry=0
ProxyPassReverse ajp://127.0.0.1:8009/tomcatlocation/
</Location>
что-то вроде foo.example.org/tomcatlocation/
или foo.example.org/tomcatlocation
не будет перенаправлять, а усечение до foo.example.org/tomcatlocatio
будет правильно перенаправлять.
Мне не удалось найти информацию об этом. Спасибо.
apache2ctl -S:
VirtualHost configuration:
*:80 is a NameVirtualHost
default server www.example.org (/etc/apache2/sites-enabled/000-default.conf:1)
port 80 namevhost www.example.org (/etc/apache2/sites-enabled/000-default.conf:1)
port 80 namevhost example.org (/etc/apache2/sites-enabled/000-default.conf:10)
wild alias *.example.org
port 80 namevhost example.net (/etc/apache2/sites-enabled/000-default.conf:15)
... other domains truncated...
*:443 is a NameVirtualHost
default server example.org (/etc/apache2/sites-enabled/default-ssl.conf:2)
port 443 namevhost example.org (/etc/apache2/sites-enabled/default-ssl.conf:2)
alias www.example.org
port 443 namevhost example.net (/etc/apache2/sites-enabled/default-ssl.conf:25)
alias www.example.net
... other domains truncated...
ServerRoot: "/etc/apache2"
Main DocumentRoot: "/var/www/html"
Main ErrorLog: "/var/log/apache2/error.log"
Mutex default: dir="/var/lock/apache2" mechanism=fcntl
Mutex mpm-accept: using_defaults
Mutex watchdog-callback: using_defaults
Mutex rewrite-map: using_defaults
Mutex ssl-stapling-refresh: using_defaults
Mutex ssl-stapling: using_defaults
Mutex proxy: using_defaults
Mutex ssl-cache: using_defaults
PidFile: "/var/run/apache2/apache2.pid"
Define: DUMP_VHOSTS
Define: DUMP_RUN_CFG
User: name="www-data" id=33
Group: name="www-data" id=33