手头有一域名 testA.cn 现在我要将 www.test.cn 和 tom.test.cn 对应到我的ip为 (9.12.4.41)的云服务器上。现操作步骤如下
- 在云服务器厂商管理台处 设置域名的解析,将两个域名的解析地址都设置为 9.12.4.41 这个ip地址
- 配置nginx中default.conf 新建虚拟主机
- default.conf 配置如下(仅供参考)
server {
listen 80;
server_name www.test.cn;
location ~ \.php/?.*$ {
root /php_project_one;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
set $fastcgi_script_name2 $fastcgi_script_name;
if ($fastcgi_script_name ~ "^(.+\.php)(/.+)$") {
set $fastcgi_script_name2 $1;
set $path_info $2;
}
fastcgi_param PATH_INFO $path_info;
fastcgi_param SCRIPT_FILENAME /user/local/nginx/html2$fastcgi_script_name2;
fastcgi_param SCRIPT_NAME $fastcgi_script_name2;
}
}
server {
listen 80;
server_name tom.test.cn;
location ~ \.php/?.*$ {
root /php_project_two;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
set $fastcgi_script_name2 $fastcgi_script_name;
if ($fastcgi_script_name ~ "^(.+\.php)(/.+)$") {
set $fastcgi_script_name2 $1;
set $path_info $2;
}
fastcgi_param PATH_INFO $path_info;
fastcgi_param SCRIPT_FILENAME /user/local/nginx/html$fastcgi_script_name2;
fastcgi_param SCRIPT_NAME $fastcgi_script_name2;
}
}
- 这样就将两个域名指向了同一个云服务器上,因为两个域名不同,所以指向两个不同的文件夹,这样就对应两个项目(当然也可以对应同一个项目了,只有root 文件夹名相同即可)。
参考文章链接: nginx 配置两个域名指向服务器不同的路径的问题