Liunx之nginx配置
一、nginx安装
卸载yum安装的ngjnx
yum remove nginx -y
编译安装nginx步骤
编译安装nginx的步骤
1.解决软件依赖
yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel
openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel
gdbm-devel db4-devel libpcap-devel xz-devel openssl openssl-devel -y 2.下载nginx的源代码包,这里用的淘宝的tengine
wget http://tengine.taobao.org/download/tengine-2.3.1.tar.gz 3.解压缩tnginx包
tar -zxvf tengine-2.3.1.tar.gz 4.进入源码目录,开始编译三部曲
./configure --prefix=/opt/tngx231/
make && make install 5.可以使用了
发现缺少sqllite这个一个软件依赖包,就得直接删除编译好的软件,重新编译即可 6.进入安装好的tngx321目录,查看有哪些东西
conf 存放nginx的配置文件
html 存放前端文件的
logs 存放nginx的日志文件 进入sbin 启动nginx
./nginx 7.配置path变量,可以快捷使用nginx命令
vim /etc/profile
PATH='/opt/python36/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/opt/tngx231/sbin' 8.查看nginx的首页文件 index.html
二、nginx配置
nginx的功能性学习,所有的功能都是通过nginx.conf配置文件定义的
修改配置参数,就实现了不同的功能
1、使用nginx配置一个站点,进行访问,例如index.html
vim /html/index.html

2、nginx.conf中的配置
【虚拟主机站点功能】
server {
# 监听端口
listen 85;
# 域名可以有多个用空格隔开
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
#access_log "pipe:rollback logs/host.access_log interval=1d baknum=7 maxsize=2G" main;
#网站的路径匹配,如同django的urls匹配,对用户的访问url进行路径分配
#当请求url长这样时:
# 192.168.16.142:85/ 就走如下location配置
location / {
#deny 192.168.16.0/24;
#root参数是定义网页根目录的,可以修改
root /opt/html;
#index 定义网页首页名字的
index index.html index.htm;
}
#当用户请求url是 192.168.16.142:85/pic/monkeyKing.jpg
location /pic {
#通过alias别名参数,去这个路径下找
alias /opt/pic/;
}
# 404页面
error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
}
【日志功能】
找到nginx.conf中的http{}代码块,然后,找到里面的如下配置
#日志格式设定
#$remote_addr与$http_x_forwarded_for用以记录客户端的ip地址;
#$remote_user:用来记录客户端用户名称;
#$time_local: 用来记录访问时间与时区;
#$request: 用来记录请求的url与http协议;
#$status: 用来记录请求状态;成功是200,
#$body_bytes_sent :记录发送给客户端文件主体内容大小;
#$http_referer:用来记录从那个页面链接访问过来的;
#$http_user_agent:记录客户浏览器的相关信息;
#通常web服务器放在反向代理的后面,这样就不能获取到客户的IP地址了,通过$remote_add拿到的IP地址是反向代理服务器的iP地址。
反向代理服务器在转发请求的http头信息中,可以增加x_forwarded_for信息,用以记录原有客户端的IP地址和原来客户端的请求的服务器地址。
log_format access '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" $http_x_forwarded_for';
所有的日志信息和错误信息都在logs文件夹下:

access.log日志信息:
error.log错误日志:
nginx.pid当前nginx运行的进程id:

【禁止访问】
在nginx.conf中,找到如下参数,修改
location / {
#拒绝访问,192.168.16.0网段的同学都无法访问 /24是子网掩码的意思
deny 192.168.16.0/24;
root html;
index index.html index.htm;
}
【修改虚拟主机的家目录】
虚拟主机就是nginx.conf中 server{}标签定义的代码
网站的路径匹配,如同django的urls匹配,对用户的访问url进行路径分配
#当请求url长这样时:
# 192.168.16.142:85/ 就走如下location配置
location / {
#deny 192.168.16.0/24;
#root参数是定义网页根目录的,可以修改
root /opt/html;
#index 定义网页首页名字的
index index.html index.htm;
}
#当用户请求url是 192.168.16.142:85/pic/monkeyKing.jpg
location /pic {
#通过alias别名参数,去这个路径下找
alias /opt/pic/;
} location /media {
alias /opt/media;
}
【404页面】
-nginx的404页面,在nginx.conf中,找到一个error_page 参数
#当请求错误码是404 时,就返回一个404.html给用户查看,并且这个文件在网页根目录下
error_page 404 /404.html;
【虚拟主机功能】
一个nginx下运行多个网址
# 找到nginx安装目录下的conf文件夹,找到nginx.conf
# 通过编写多个server标签实现多虚拟主机
# nginx.conf配置如下:
# 虚拟主机1:
server {
# 监听的端口
listen 80;
#这里进行域名匹配
server_name www.s20hanju.tv;
#这里进行路径匹配
location / {
#root定义网页根目录
root /opt/s20/hanju;
#index 定义网站首页文件名
index index.html;
}
}
# 虚拟主机2:
server {
listen 81;
server_name www.s20lol.tv;
location / {
root /opt/s20/lol;
index index.html;
}
} # 改完nginx.conf的配置,需要重启nginx -s reload # 分别准备hanju和lol的数据文件夹 # 然后再去windows中准备hosts文件,进行域名解析
# 文件绝对路径
# C:\Windows\System32\drivers\etc\hosts
# 内容如下:
192.168.16.142 www.s20hanju.tv
192.168.16.142 www.s20lol.tv # 最后在windows中进行访问,分别访问lol和hanju的网址内容
域名解析是先从本地的host文件中开始找,如果找不到会去dns找;
3、nginx的启停命令
直接输入 nginx 是启动
nginx -s stop 停止
nginx -s reload 平滑加载,不重启nginx,重新读取配置文件,生效
4、liunx的压测命令
1.安装ab命令
yum -y install httpd-tools
2.使用ab压测命令
-n requests #执行的请求数,即一共发起多少请求。 -c concurrency #请求并发数。 -k #启用HTTP KeepAlive功能,即在一个HTTP会话中执行多个请求。
# 进行压测命令,统计网站请求数
ab -kc 1000 -n 100000 http://192.168.16.142/
5、nginx状态模块
找到nginx.conf然后再找到一个虚拟主机server标签,添加如下配置即可
location /status {
#开启nginx状态功能
stub_status on;
}
Liunx之nginx配置的更多相关文章
- Liunx下Tomcat+MYSQL+Nginx配置
环境:centos6.4 min #安装编译库及依赖模块 yum -y install gcc gcc-c++ autoconf automake make yum -y install zlib z ...
- Nginx 笔记(三)nginx 配置实例 - 反向代理、负载均衡、动静分离
个人博客网:https://wushaopei.github.io/ (你想要这里多有) 一.反向代理 反向代理准备工作: (1)在 liunx 系统安装 tomcat,使用默认端口 8080 ...
- nginx配置反向代理或跳转出现400问题处理记录
午休完上班后,同事说测试站点访问接口出现400 Bad Request Request Header Or Cookie Too Large提示,心想还好是测试服务器出现问题,影响不大,不过也赶紧上 ...
- Windos环境用Nginx配置反向代理和负载均衡
Windos环境用Nginx配置反向代理和负载均衡 引言:在前后端分离架构下,难免会遇到跨域问题.目前的解决方案大致有JSONP,反向代理,CORS这三种方式.JSONP兼容性良好,最大的缺点是只支持 ...
- Windows下Nginx配置SSL实现Https访问(包含证书生成)
Vincent.李 Windows下Nginx配置SSL实现Https访问(包含证书生成) Windows下Nginx配置SSL实现Https访问(包含证书生成) 首先要说明为什么要实现https ...
- Nginx 配置简述
不论是本地开发,还是远程到 Server 开发,还是给提供 demo 给人看效果,我们时常需要对 Nginx 做配置,Nginx 的配置项相当多,如果考虑性能配置起来会比较麻烦.不过,我们往往只是需要 ...
- Nginx配置详解
序言 Nginx是lgor Sysoev为俄罗斯访问量第二的rambler.ru站点设计开发的.从2004年发布至今,凭借开源的力量,已经接近成熟与完善. Nginx功能丰富,可作为HTTP服务器,也 ...
- Nginx配置Https
1.申请证书: https://console.qcloud.com/ssl?utm_source=yingyongbao&utm_medium=ssl&utm_campaign=qc ...
- nginx配置为windows服务中的坑
网上搜索“nginx 配置为windows服务”,很容易搜索到使用windows server warpper来配置,于是按照网上的方法我从github上的链接下载了1.17版本,前面都很顺利,很容易 ...
随机推荐
- hdu 4745 two Rabits
题目:http://acm.hdu.edu.cn/showproblem.php?pid=4745 题解:首先要抽象出题目要求的是啥.首先对于环的问题, 我们可以倍增成链,然后环的所有情况可以通过链来 ...
- 工欲善其事必先利其器之Vagrant + VirtualBox
Vagrant 可以管理 VirtualBox,实现快速配置创建虚拟机 1.下载软件 VirtualBox虚拟机下载地址:https://www.virtualbox.org/wiki/Downloa ...
- JAVA的转义字符
一.常见的转义字符 转移字符对应的英文是escape character , 转义字符串(Escape Sequence) 字母前面加上捺斜线"\"来表示常见的那些不能显示的AS ...
- .net core partial view的一些心得
原文:.net core partial view的一些心得 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog. ...
- Map集合中key不存在时使用toString()方法、valueOf()方法和强制转换((String))之间的区别
1.toString()方法 底层代码 public String toString() { return this; } 其返回值为String类型的字符串本身 Map<String, Obj ...
- RGB转YUV 各种库的性能比较
分辨率 1920*1080 平台 : X64 Windows VS2015 测试 BGR24-->YUV420 trans_scale: 4.14 ms (自己写得)libyuv ...
- /sockjs-node/info 报错问题
首先 sockjs-node 确实是维持全双工通信用的,关键在于为什么要有这个东西,其实其作用就是保证我们在改完代码重新编译之后,能够通知浏览器重新加载变更结果(我也是因为之前都可以改完代码之后浏览器 ...
- bootstrap 模态框在iphone微信内点击无效
<a data-toggle="modal" data-target="#wwww" href="" οnclick=" ...
- css-两个div并排,左边宽度固定右边自适应的布局 的实现方法
<div class= "container"> <div class="left"></div> <div clas ...
- DAY2新手选品原则及供应商选择
一.新手选品原则(主要是为了起量) 1.净利润率高(容易起量) 2.发货方便,售后方便(发货,打包方便,不易破损,退货率低) 3.具有细分市场优势(衣服->古代衣服,论文排版) 4.市场规模够大 ...