centos上nginx的一些使用(关于反向代理)
今天将静态页面部和api部署到服务器,所以用到了nginx
第一步:准备工作
1.1、安装gcc: yum install gcc-c++
1.2 、安装PCRE pcre-devel: yum install -y pcre pcre-devel
1.3 、安装zlib: yum install -y zlib zlib-devel
1.4、安装OpenSSL: yum install -y openssl openssl-devel
第二步:安装
我是从官网下载的nginx压缩包,然后用rz上传到指定目录
2.1 cd /web/webserver
2.2 rz 上传
2.3 mv nginx-version nginx
2.4 cd nginx
2.5 ./configure –prefix=/web/webserver/nginx将安装目录设置在当前目录(默认目录为/usr/local)
2.6 make install
第三步:使用
如果出现占用 killall -9 nginx
进入/nginx/sbin 输入 ./nginx -c /web/webserver/nginx/conf/nginx.conf指定启动
检测配置是否正常 ./nginx -t
重启 ./nginx -s reload
第四步:配置
在nginx.conf的http模块里面 输入 include conf.d/*引入conf.d文件夹下的所有配置
配置如下
^~ 通配以static起始的uri,这里用的是root
访问xxxx.com/static/test/index.html 实际访问地址是/web/project +/static +/test/index.html
如果将root换位alias 相对路径
那么实际访问地址是 /web/project +/test/index.html
那个api是我开启的一个node服务,因为我没有设置node的二级域名
配置proxy_pass时,当在后面的url加上了/,相当于是绝对根路径,则nginx不会把location中匹配的路径部分代理走;如果没有/,则会把匹配的路径部分也给代理走
所以当api不加/ 时
我访问 xxxx.com/api/test 实际访问的时127.0.0.1/10001/api/test
加了/ 则是 127.0.0.1/10001/test