我是网络服务器相关的初学者。
我的服务器已经在使用域www.example.com
我还想在服务器上托管test.example.com
,该行为也与www.example.com
具有相同的行为。也就是说,对 test.example.com 的所有请求都应映射到start.php文件。
此外,域名应保持test.example.com
,即我不想将请求从test.example.com
重定向到www.example.com
。
我如何实现这一目标?
答案 0 :(得分:3)
您的解决方案是name-based virtual host。
具体而言,您希望设置虚拟主机以将请求定向到特定主机(在这种情况下,由子域标识)到特定目录。此后,只需将请求重写为start.php
。
<VirtualHost *>
ServerName mysub.domain.tld
DocumentRoot /www/vhosts/http/mysub.domain.tld
RewriteEngine On
RewriteRule ^(.*)$ start.php [L]
</VirtualHost>
将其放在您的Apache配置文件中或放在sites-available
目录中的单独文件中,通过a2ensite
启用它。确保在domain.tld
之前加载此文件,否则Apache将识别domain.tld
的路径并忘记mysub.domain.tld
。
重启Apache,你应该好好去。