下载并解压
cd /usr/local
mkdir nginx
cd nginx
//下载tar包
wget http://nginx.org/download/nginx-1.13.7.tar.gz
tar -xvf nginx-1.13.7.tar.gz
安装nginx
//进入nginx目录
cd /usr/local/nginx
//进入目录
cd nginx-1.13.7
//执行命令
./configure
//执行make命令
make
========================================================
./configure 错误 make: * 没有规则可以创建“default”需要的目标“build”。 停止。
缺少依赖
https://blog.csdn.net/qq_44895681/article/details/104757887
yum -y install gcc openssl openssl-devel pcre-devel zlib zlib-devel
=====================================================
//执行make install命令
make install
配置nginx.conf
vi /usr/local/nginx/conf/nginx.conf
localhost修改为你服务器ip地址
server {
listen 80;
server_name 120.26.208.13;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {<br /> proxy_pass http://120.26.208.13:3000;<br /> }<br />}
启动nginx
/usr/local/nginx/sbin/nginx -s reload
如果出现报错:nginx: [error] open() "/usr/local/nginx/logs/nginx.pid" failed
则运行: /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
再次启动即可!
ps -ef | grep nginx
netstat -anp | grep 80
============================================
启动代码格式:
-c 指定配置文件
/nginx安装目录地址 -c /nginx配置文件地址
默认的路径是安装目录下的conf/nginx.conf
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
============================================
cd /usr/local/nginx/sbin
./nginx 启动
./nginx -s stop 关闭
./nginx -s reload 重启
访问niginx界面
若想使用外部主机连接上虚拟机访问端口,需要关闭虚拟机的防火墙:
centOS6及以前版本使用命令: systemctl stop iptables.service
centOS7关闭防火墙命令: systemctl stop firewalld.service
随后访问该ip即可看到nginx界面。
访问服务器ip查看
Nginx依赖包
在源码安装Nginx时,出现以下错误信息:
make && make install
make: * 没有规则可以创建“default”需要的目标“build”。 停止。
Nginx所需依赖包:
gcc
功能:预处理、编译、连接、汇编
openssl
功能:用于网站加密通讯。
pcre
功能:用于支持解析正则表达式。
zlib
功能:用于对数据进行解压缩。网站之间通信时,数据先压缩再传输,通过消耗CPU的方式来节省网络带宽。
安装Nginx相关依赖包:
yum -y install gcc openssl openssl-devel pcre-devel zlib zlib-devel
如果这个方法还是不行,可以检查 ./configure后面的选项是否有误,或者选项中的路径是 否正确,也可以看一下系统提示哪些是 —not found的,看缺少哪些依赖包。
http{
server {
listen 8080; # 绑定的端口号
server_name localhost; # 填你自己的域名或者ip
# 重点来了
location /user { # 可以填其他的, 可以是正则等, 这个没有细看(自行百度~)
# 路径要和对应服务的路径相同, 比如localhost:8001/user
# 通过8080/user端口访问的这个路径, 会一直对应在8001/user这个路径下,
# 再比如, 想访问8080/user/login的时候, 对应8001/user/login
proxy_pass http://localhost:8001; # 反向代理本地8001端口
}
location /product {
# 同上, 不过访问的时候要通过8080/product访问, 本地8002也需要有product这个前缀
proxy_pass http://localhost:8002; # 反向代理本地8002端口
}
}
}