06 Nginx
1.检查linux上是否通过yum安装了nginx
rpm -qi nginx
2.解决安装nginx所依赖包
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
3.源代码编译安装Nginx(在/opt目录下)
1.下载淘宝Nginx源码包wget http://tengine.taobao.org/download/tengine-2.3.0.tar.gz2.解压缩源代码tar -zxvf tengine-2.3.0.tar.gz3.进入到tengine-2.3.0目录,进行编译安装cd tengine-2.3.04.释放编译文件,指定安装路径.configure --prefix=/opt/tengine5.开始编译且安装make&&make install6.卸载之前通过yum安装的Nginxyum remove nginx -y7.查看nginx的安装目录ls /opt/tengineconf:存放nginx所有的配置文件的目录html:存放前端静态页面logs:存放nginx的日志目录sbin:存放nginx的可执行的命令8.配置nginx的环境变量,支持快速启动(命令行直接nginx)1.cd /opt/tengine/sbin2.pwd3.vim /etc/profilePATH中加入pwd的结果9.启动nginxnginx10.修改nginx的首页静态模板文件vim /opt/tengine/html/index.html输入你想要显示的内容
4.修改nginx的配置文件的
1.vim /opt/tengine/conf/nginx.conf
#查看nginx.conf的内容,过滤掉注释内容,和空白行[root@wangdachui conf]# grep -v "^#" nginx.conf|grep -v "^$"#全局变量,工作进程数worker_processes 1;events {epoll;#提高大并发下小活动量的CPU利用率worker_connections 65536; #根据linux的文件描述符来修改}#http代表nginx核心功能块http {include mime.types;default_type application/octet-stream;gzip on; #开启压缩图片功能#代表nginx的虚拟主机功能#当我们访问192.168.226.128:80/就进入这个虚拟主机的配置#第一个虚拟主机dnf网址server {#nginx监听的端口listen 80;#填写服务器的域名,没有域名就写ip地址即可server_name 192.168.226.128;#路径资源匹配 ,匹配 / 目录#192.168.226.128:80/#这是最低级匹配,所有的请求,都会进入这个locationlocation / {#root参数指的是定义一个虚拟主机根目录root html; #填写静态模板文件的绝对路径#index参数指定首页文件的名字index index.html;}#第二个虚拟主机 韩剧网址server {listen 80;#监听80端口server_name 192.168.226.128;服务器的iplocation / {root /opt/s18hanju/;index index.html;}}}
2.nginx功能学习
1.修改windows下的host文件,顶一个假域名c:windows/system32/drivers/etc/hosts如果不能编辑,右击选择属性,改变它的权限信息.2.在最下面写入linux的IP 域名192.168.119.147 www.hahahn.com这样就可以通过域名访问了3.配置nginx多虚拟机,其实就是在nginx.conf中写入多个server,代表多个虚拟主机server {listen 80;server_name www.s18dnf.com;location / {root /opt/s18dnf/;index index.html index.htm;}}#第二个虚拟主机 韩剧网址server {listen 80;server_name www.s18hanju.com;location / {root /opt/s18hanju/;index index.html;}}注意事项:1.两个server同在http核心模块中的同一级目录2.server_name如果对应的是本机的IP地址,虚拟主机是自上而下加载的,也就是说不管输 入什么在windows的hosts文件配好的假域名,都只会匹配到第一个虚拟主机3.如果server_name对应的是域名,则nginx会根据域名找到与之匹配的域名对应的虚拟主机4.修改完nginx.conf文件要平滑重启nginx -s reloadnginx -t 查看是否有语法错误5.nginx的状态模块功能学习1.修改nginx.conf的配置文件找到一个server虚拟主机,写入如下配置location /status {stub_status on;}2.重启nginx,在对应域名后加 /status 加载这个status状态模块功能3.通过ab压测命令,去给网站发起n多个请求安装ab压测命令工具yum -y install httpd-tools4.给服务器nginx,发起一万个请求ab -kc 1000 -n 10000 http://192.168.226.128/5.nginx的access.log访问日志功能编辑nginx.conf打开如下配置参数打开如下注释log_format main '$remote_addr - $remote_user [$time_local] "$request"''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';access_log logs/access.log main;access_log "pipe:rollback logs/access_log interval=1d baknum=7 maxsize=2G" main;重启nginx查看logs下的日志文件,检测用户请求信息tail -f logs/access.log,然后用浏览器访问时,就会看到日志的变化.6.优化nginx的404页面修改nginx.conf的404错误页面优化找到如下配置#当错误状态码是 40x系列就返回,nginx目录下的40x.htmlerror_page 404 403 402 400 401 /40x.html;重启nginx 查看404页面(输入正确的url,后面再随便加点东西)7.限制IP访问找到nginx.conf修改如下代码location / {#禁止192.168.226.0/24 这个地址段所有的ip访问deny 192.168.226.1;root /opt/s18dnf;index index.html index.htm;}8.nginx反向代理功能准备两台机器,一个是真实的资源服务器,另一个是反向代理服务器,分别安装nginx一个能正常返回资源,另一个的nginx.conf,找到一个server虚拟主机,location /配置如下:location / {# proxy_pass http://代理的主机IPproxy_pass http://192.168.119.147}重启nginx,然后访问代理服务器,就会访问到另一台资源服务器的资源
5.出现的问题
浏览器出现403(访问权限不足)
1.将资源写在了/root下面,普通用户访问不到2.找到nginx.conf中deny屏蔽掉了此IP地址,删除禁止就好了.
06 Nginx的更多相关文章
- 06 nginx Location详解之精准匹配
一:Location详解之精准匹配 location 语法 location 有”定位”的意思, 根据Uri来进行不同的定位. 在虚拟主机的配置中,是必不可少的,location可以把网站的不同部分, ...
- 06 . Nginx静态资源缓存
Nginx静态资源 Nginx可以处理静态资源 非Web服务器可以运行处理而生成的文件,即服务器只需要从硬盘或者缓存中读取然后直接给客户端响应即可. 常见的静态资源 # 浏览器渲染: html文件,样 ...
- nginx cpu高排查
首先查看nginx的error日志,无异常打印. cpu占用如下图所示: top - 10:05:40 up 233 days, 16:28, 4 users, load average: 25.53 ...
- 八.nginx网站服务实践应用
期中集群架构-第八章-期中架构nginx章节====================================================================== 01. web ...
- nginx高并发下配置参数
今天下午,测试组同事模拟800个用户同时发起请求,nginx开始报错, "Too Many Open Files" 我们使用的是Dell R430服务器,2个物理CPU,每个CP ...
- linux下如何启动nginx?
命令: /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf ........... [root@localhost sbin ...
- Nginx之常用基本配置(三)
前面我们聊了下了Nginx作为WEB服务器对客户端请求相关配置,文件操作优化.Nginx访问控制.basic验证,.状态模块状态页.gzip压缩配置:回顾请参考https://www.cnblogs. ...
- 神器 Nginx 的学习手册 ( 建议收藏 )
关注「开源Linux」,选择"设为星标" 回复「学习」,有我为您特别筛选的学习资料~ Nginx 是一个高性能的 HTTP 和反向代理服务器,特点是占用内存少,并发能力强,事实上 ...
- Linux 提高操作效率之 tab 命令补全
最近在使用阿里云 ECS 时,发现 Centos 无法进行 tab 补全,特别影响操作效率,本文简单记录下 Linux 下的 tab 命令补全功能,希望对 Linux 初学者有所帮助. 安装 Linu ...
随机推荐
- 黑马lavarel教程---10、lavarel模型关联
黑马lavarel教程---10.lavarel模型关联 一.总结 一句话总结: 1.模型关联比较方便,一次定义,后面都可以使用 2.关联关系 使用动态属性进行调用 1.一对多,多对多实例? 一对多: ...
- python全栈开发第6天
作业一:1) 开启Linux系统前添加一块大小为15G的SCSI硬盘 2) 开启系统,右击桌面,打开终端 3) 为新加的硬盘分区,一个主分区大小为5G,剩余空间给扩展分区,在扩展分区上划分1个逻辑分区 ...
- layui 数据表格复选框实现单选功能
//点击选中(单选)//单击行勾选checkbox事件 $(document).on("click",".layui-table-body table.layui-tab ...
- SAS数据挖掘实战篇【五】
SAS数据挖掘实战篇[五] SAS--预测模型 6.1 测模型介绍 预测型(Prediction)是指由历史的和当前的数据产生的并能推测未来数据趋势的知识.这类知识可以被认为是以时 间为关键属性的关联 ...
- linux网络管理命令"ip"用法
Linux的ip命令和ifconfig类似,但前者功能更强大,并旨在取代后者.使用ip命令,只需一个命令,你就能很轻松地执行一些网络管理任务. ip help命令: 显示ip相关命令的帮助: # i ...
- MyEclipse 下'Publishing to Tomcat'has encountered a problem解决办法
详情查看: MyEclipse 下'Publishing to Tomcat'has encountered a problem解决办法
- Nginx的root和alias区别
1.root 下面举例说明: location /i/ { root /data/w3; } 请求 http://foofish.net/i/top.gif 这个地址时,那么在服务器里面对应的真正的资 ...
- hadoop的目录结构介绍
hadoop的目录结构介绍 解压缩hadoop 利用tar –zxvf把hadoop的jar包放到指定的目录下. tar -zxvf /home/software/aa.tar.gz -C /home ...
- Java十大bug之——包冲突
找bug就像破案,有的bug简单,有的bug复杂,还有的bug隐藏的令人难以发现. 一个逻辑上看起来一切都正常,结果确有问题,且怎么分析都感觉自己写的没问题的情况——包冲突 遇到这个bug最开始没有任 ...
- [c++] 幂法求特征向量
幂法的原理可参考此篇论文:http://d.wanfangdata.com.cn/Periodical/hnnydxxb2001Z1023 本文求解的是 3 阶矩阵最大特征值及其特征向量 下面是其 C ...