一、ngnix官网
官网 : https://nginx.org/en/download.html

二、安装nginx依赖环境及nginx
2.1 安装编译工具及库文件(如新环境,未安装请先安装)
yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel
2 2.安装PCRE库
# 若无/usr/local/nginx,请先执行创建命令创建:mkdir -p /usr/local/nginx
cd /usr/local/nginx
# 最新版本 8.45
wget http://downloads.sourceforge.net/project/pcre/pcre/8.45/pcre-8.45.tar.gz
# 解压
tar zxvf pcre-8.45.tar.gz
# 进入解压目录
cd pcre-8.45
# 编译安装
./configure
make && make install
2.3 安装 nginx
2.3.1 下载 Nginx,下载地址:https://nginx.org/en/download.html
# 下载稳定版本 nginx-1.24.0.tar.gz
cd /usr/local/nginx
wget http://nginx.org/download/nginx-1.24.0.tar.gz
2.3.2 解压
tar zxvf nginx-1.24.0.tar.gz
2.3.3 进入nginx-1.24.0 文件夹
cd nginx-1.24.0
2.3.4 执行编译安装命令
# --prefix=/usr/local/nginx/webserver/nginx # nginx安装位置
# pcre=/usr/local/nginx/pcre-8.45 # 刚才解压的pcre-8.45安装位置
./configure --prefix=/usr/local/nginx/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/nginx/pcre-8.45
make
make install
2.3.5 查看安装成功版本
/usr/local/nginx/webserver/nginx/sbin/./nginx -v
- 安装结果

2.3.6 配置环境变量
- 修改/etc/profile文件
vim /etc/profile
在最后一行添加
export PATH=$PATH:/usr/local/nginx/webserver/nginx/sbin
# 执行命令生效
source /etc/profile
- 测试(执行命令即可显示nginx版本)
nginx -v
2.4 nginx 常用命令
2.4.1 启动nginx
# 未配置环境变量
/usr/local/nginx/webserver/nginx/sbin./nginx
# 但是当我们按上述设置环境变量后,则可以在任意目录下执行以下命令启动nginx
nginx
2.4.2 停止nginx(直接全部停止)
# 未配置环境变量
/usr/local/nginx/webserver/nginx/sbin./nginx -s stop
# 已配置环境变量
nginx -s stop
2.4.3 停止nginx (正常停止,慢慢关闭所有进程)
# 未配置环境变量
/usr/local/nginx/webserver/nginx/sbin./nginx -s quit
# 已配置环境变量
nginx -s quit
2.4.4 更改配置文件后,重新加载(常用)
# 未配置环境变量
/usr/local/nginx/webserver/nginx/sbin./nginx -s reload
# 已配置环境变量
nginx -s reload
2.4.5 修改nginx.conf文件后查看是否配置正确
# 未配置环境变量
/usr/local/nginx/webserver/nginx/sbin./nginx -t
# 已配置环境变量
nginx -t
2.4.6 查看 nginx 进程
ps -ef | grep nginx

三、nginx介绍
Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。2011年6月1日,nginx 1.0.4发布。
其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。在全球活跃的网站中有12.18%的使用比率,大约为2220万个网站。
Nginx 是一个安装非常的简单、配置文件非常简洁(还能够支持perl语法)、Bug非常少的服务。Nginx 启动特别容易,并且几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启动。你还能够不间断服务的情况下进行软件版本的升级。
Nginx代码完全用C语言从头写成。官方数据测试表明能够支持高达 50,000 个并发连接数的响应。
Http代理,反向代理:作为web服务器最常用的功能之一,尤其是反向代理。
正向代理:

反向代理:

Nginx提供的负载均衡策略有2种:内置策略 和 扩展策略。内置策略为轮询,加权(weight=1/2/3)轮询,Ip hash。扩展策略,就天马行空,只有你想不到的没有他做不到的。
轮询:

加权轮询:

iphash对客户端请求的ip进行hash操作,然后根据hash结果将同一个客户端ip的请求分发给同一台服务器进行处理,可以解决session不共享的问题。

动静分离,在我们的软件开发中,有些请求是需要后台处理的,有些请求是不需要经过后台处理的(如:css、html、jpg、js等等文件),这些不需要经过后台处理的文件称为静态文件。让动态网站里的动态网页根据一定规则把不变的资源和经常变的资源区分开来,动静资源做好了拆分以后,我们就可以根据静态资源的特点将其做缓存操作。提高资源响应的速度。

四、存在问题及linux命令
4.1.注意:如果连接不上,检查阿里云安全组是否开放端口,或者服务器防火墙是否开放端口!
- 相关命令
# 开启防火墙
service firewalld start
# 重启防火墙
service firewalld restart
# 关闭
service firewalld stop
# 查看防火墙规则
firewall-cmd --list-all
# 查询端口是否开放
firewall-cmd --query-port=8080/tcp
# 开放80端口
firewall-cmd --permanent --add-port=80/tcp
# 移除端口
firewall-cmd --permanent --remove-port=8080/tcp
#重启防火墙(修改配置后要重启防火墙)
firewall-cmd --reload
# 参数解释
1、firwall-cmd:是Linux提供的操作firewall的一个工具;
2、--permanent:表示设置为持久;
3、--add-port:标识添加的端口;
4.2 通过nginx下载服务器文件报错
- 错误详情:
nginx错误:[error] 32410#0: *3 open() "/data/ouna/upload/firmware/wdw.txt" failed (13: Permission denied)
- 解决方案
(1) 给nginx设置用户,修改配置文件nginx.conf中 user,改为user root(root换成其他也许,这是自定义的。)
(2) 给存储文件的目录授权。注意:root 前边设置的nginx的user名称
chown -R root:root /data/ouna/upload/firmware/
本文详细介绍了如何在Linux环境下安装和配置Nginx,包括下载、编译、安装步骤以及启动、停止和管理Nginx的命令。同时,文章提到了Nginx的性能特点和在大型网站中的广泛应用,并给出了处理权限问题的示例。此外,还讨论了Nginx的负载均衡策略,如轮询和IP哈希。
6340

被折叠的 条评论
为什么被折叠?



