sudo apt-get install nginx
安装好后对nginx 进行配置!
Nginx配置文件
nginx的配置文件默认读取/etc/nginx/nginx.conf文件。
当然也可以修改使用的conf路径,使用命令:
./nginx -c 你的conf文件位置
可以相对路径或者绝对路径。
如果是不熟悉环境的Linux服务器,可以使用命令来快速查找nginx.conf文件 :
sudo find / -name "nginx.conf"
也可以使用命令
sudo nginx -t
来输出正在使用的配置文件:
nginx: the configuration file /data/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /data/nginx/conf/nginx.conf test is successful
nginx的配置都是由 directives组成,directives由简单指令或者区块指令组成
简单指令:listen 80;
区块指令由{}包含,区块指令又可以包含多个简单指令和区块指令:
http {
server {
}
}
多域名配置
我们都知道如果在域名管理的控制面板设置域名对应ip只能设置到ip,不能详细设置到端口。如果一台服务器部署了多个web应用,使用的不同端口启动的,那么就可以Nginx做映射。
比如我有一个域名 www.525.life。
域名还可以分出2级域名: admin.525.life。
我在域名控制面板把这两个域名都指向我的服务器公网ip 123.123.123.123。
这时候发现www.525.life和admin.525.life域名访问都只是对应到了 使用端口80的Web程序(默认的)。
如果我们要访问81端口的应用程序只能使用:
admin.525.life:81。
但是这样很不方便。我们要把端口去掉也能访问就需要使用Nginx做映射。
我们期望www.525.life访问8880端口,admin.525.life访问8881端口。那么可以设置如下:
server
{
listen 80;
server_name www.525.life;
location / {
#....
proxy_pass http://localhost:8880;
}
##### other directive
}
server
{
listen 80;
server_name admin.525.life;
location / {
#....
proxy_pass http://localhost:8881;
}
##### other directive
}
这样设置就可以了。把8880和8881都映射到80端口的监听。
使用重载命令使nginx生效:
sudo nginx -s reload
使用命令重启nginx生效:
/etc/init.d/nginx restart
这样就能使用www.525.life访问8880端口,admin.525.life访问8881端口。
网友评论