如何为站点子文件夹设置域名别名,实现独立域名绑定子目录
子文件夹域名别名配置教程
前置准备
- 将
anothersoftware.com的DNS解析添加A记录,指向domain.com所在服务器的公网IP;同服务商场景下也可以添加CNAME记录直接指向domain.com - 若使用国内服务器,需确保两个域名都已完成备案
不同服务端配置方案
Nginx 配置方案
修改Nginx的站点配置文件,新增anothersoftware.com的服务块,示例如下:
server { listen 80; server_name anothersoftware.com; # 根目录直接指向domain.com对应subfolder的物理路径 root /www/wwwroot/domain.com/subfolder; index index.html index.php index.htm; # PHP站点补充以下解析规则 location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } # 需保留原路径映射逻辑可改用反向代理方案 # location / { # proxy_pass http://domain.com/subfolder/; # proxy_set_header Host $host; # proxy_set_header X-Real-IP $remote_addr; # proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # } }
配置完成后执行nginx -s reload重载配置即可生效。
Apache 配置方案
修改Apache虚拟主机配置文件,示例如下:
<VirtualHost *:80> ServerName anothersoftware.com DocumentRoot "/www/wwwroot/domain.com/subfolder" <Directory "/www/wwwroot/domain.com/subfolder"> AllowOverride All Require all granted </Directory> </VirtualHost>
不想修改全局配置也可以在anothersoftware.com根目录添加.htaccess规则:
RewriteEngine On RewriteCond %{HTTP_HOST} ^anothersoftware.com$ [NC] RewriteRule ^(.*)$ http://domain.com/subfolder/$1 [P,L]
配置完成后重启Apache服务生效。
面板类配置方案(宝塔/cPanel等)
直接新建站点,域名填写anothersoftware.com,站点根目录手动选择为domain.com对应的subfolder文件夹即可,无需额外修改配置文件。
注意事项
- 若站点内存在硬编码的
domain.com/subfolder/格式绝对路径,需要统一替换为相对路径或者anothersoftware.com的对应路径,避免出现资源加载异常、跳转错误问题。 - 如需配置HTTPS,单独为
anothersoftware.com申请SSL证书,或者使用泛域名证书同时覆盖两个域名即可。
内容的提问来源于stack exchange,提问作者Kiraz Dijital
相关产品推荐
相关产品推荐

