Nginx部署访问控制(Web)
Posted 王非雨
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx部署访问控制(Web)相关的知识,希望对你有一定的参考价值。
一、nginx
1.优点
1)多并发数:30000 - 50000
2)网易、腾讯等
3)新闻、论坛等
4)静态网页
5)轻量级
6)nginx+tomcat:负载均衡
Apache:模块化设计
二、Nginx
源代码
1.安装软件包
(1)删除本地与yum源 rm -rf /etc/yum.repos.d/*
(2) 配置本地yum源 vim /etc/yum.repos.d/local.repo
(3)安装nginx依赖包 yum -y install pcre-devel zlib-devel
(4)创建服务运行用户 useradd -M -s /sbin/nologin nginx
(5)将源码包通过xsehll或者lrzsz包命令上传到服务器(这里通过lrzsz)安装完直接通过远程连接软件(xshell)
拖拽到服务器或者用rz命令自主选择上传
(6)解压nginx压缩包到/usr/src/目录下
tar -zxvf nginx-1.6.0.tar.gz -C /usr/src/
(7)进入解压目录/usr/src/nginx-1.6.0/下 cd /usr/src/nginx-1.6.0/
(8)编译nginx功能模块 ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module
详解:
--user:指定运行用户
--group:指定运行组
--with-http_stub_status_module:启用状态统计模块支持
(9)安装nginx网站服务 make && make install
2.修改配置文件
//修改配置文件vim /usr/local/nginx/conf/nginx.conf
3.启动nginx服务
(1)将命令做软链接或加入到PATH环境变量,方便命令执行(这里指方法一)
方法一:ln -s /usr/local/nginx/sbin/* /usr/local/sbin/
方法二:echo "PATH=$PATH:/usr/local/nginx/sbin/" >>/etc/profile && source /etc/profile
(2)编辑nginx启动脚本 vim /etc/init.d/nginx
(3)给nginx启动脚本执行权限 chmod +x /etc/init.d/nginx
(4)启动nginx服务 /etc/init.d/nginx start
(5)设置nginx服务在35级别开机自启 chkconfig --level 35 nginx on
(6)检查配置文件是否有误 nginx -t
4.增加状态统计支持(前提是在编译时需要添加所需要的模块功能才能在配置文件里增加)
(1)编辑nginx配置文件 vim /usr/local/nginx/conf/nginx.conf
(2)重启nginx服务 /etc/init.d/nginx restart
(3)关闭nginx服务器的防火墙 /etc/init.d/iptables stop
(4)测试网址:http://192.168.1.10/status(切记测试前一定要关闭服务器的防火墙)
本文主要部署nginx、监控、优化
三、访问控制(切记访问控制是在以上搭建好nginx基础上完成)
1.生成密码认证文件(htpasswd) yum –y install httpd-tools
2.创建可密码认证的账户 htpasswd -c /usr/local/nginx/conf/.hehe hehe
3.将/usr/local/nginx/conf/.hehe文件的所有者更改为nginx
chown nginx /usr/local/nginx/conf/.hehe
4.给 /usr/local/nginx/conf/.hehe文件所有者读取权限其他无权限
5. 修改配置文件,添加认证选项
(1)编辑nginx配置文件 vim /usr/local/nginx/conf/nginx.conf
(2)重启服务 /etc/init.d/nginx restart
(3)测试nginx访问控制
//以上这实验是对nginx做访问控制的(可根据实际情况作调整)
以上是关于Nginx部署访问控制(Web)的主要内容,如果未能解决你的问题,请参考以下文章
高性能轻量级别的web服务 Nginx(编译安装基于授权和客户端访问控制)