在nginx上配置域名解析器

今天在自己的nginx上配置域名解析服务器成功,实现的功能是将不同的域名,解析到不同的IP地址和端口上。

实际上网上有挺多类似的将不同域名和子域名配置到不同的目录的做法,本文就是参照相关的文档适当修改而写的。

上配置文本:

listen 80;
server_name localhost;

set $proxypass '';
if ($host ~* www.aps.com) {
set $proxypass http://130.38.185.103:7001/police/;
}

if ($host ~* www.xpro.com) {
set $proxypass http://130.38.185.103:7005/xpro/;
}

#charset koi8-r;

#access_log logs/host.access.log main;

location /{
proxy_pass $proxypass;
}

这个配置文件很简单,先定义一个变量$proxypass ,然后根据不同的域名(这里举例了www.aps.com和 www.xpro.com两个不同的域名),设置不同的跳转服务器,然后在location /的地方,根据不同的域名,跳转到不同的服务器上。

在测试过程中,我在我本机的C:\Windows\System32\drivers\etc\hosts文件上,配置了两个测试的域名,指向nginx所在的服务器:

130.38.185.101 www.aps.com
130.38.185.101 www.xpro.com

此时,在浏览器上输入不同的域名,就可以跳转到不同的服务器上。

配置文件注意事项:

1、在if背后 请加空格 ,在{前也要加空格,否则启动时会报unknow directive 错误:

2、建议系统的学习nginx 正则表达式,内容不多但很有用;

3、以上配置只是示范,供大家抛砖引玉;

你可能感兴趣的:(nginx,域名,解析器)