У меня есть виртуальный хост Apache, который выглядит так:
<VirtualHost *:80> ServerName host1.example.com ServerAlias host2.example.com DocumentRoot /srv/web/host1.example.com/pub </VirtualHost>
У меня есть следующий файл:
/srv/web/host1.example.com/pub/test.php
Я запрашиваю следующий URL (обратите внимание, что я использую ServerAlias
, а не ServerName
:
http://host2.example.com/test.php
Я бы хотел, чтобы test.php
host1.example.com
переменную ServerName
как-то ( host1.example.com
). Есть ли способ сделать это?
По-видимому, когда вы получаете доступ к VirtualHost через псевдоним, в любой из переменных $_SERVER
нет следа исходного SERVER_NAME
.
Единственная идея, которая приходит на ум – установить переменную среды:
SetEnv MY_HOST host1.example.com
это должно установить значение $_SERVER["MY_HOST"]
правильному имени хоста. Никаких гарантий, хотя я никогда не пробовал это на практике.