Nginx提供网站服务应用包括(虚拟主机、用户访问控制、用户验证、nginx平滑升级、防盗链)的配置

Nginx   开源且跨平台的软件    俄罗斯人开发的   提供网站服务  和  代理服务

Nginx 提供网站服务应用环境?

1.虚拟主机
2.用户访问控制
3.用户验证
4.防盗链

实验环境:

安装软件:nginx-0.855.tar.gz

操作系统:centos6.5

实验:(一)

实验目的:nginx源码包的安装以及基本的使用。

安装源码包要安装的工具:开发工具 和开发环境

wKioL1XqfgehFjvrAAAlODOmxGA307.jpg

wKioL1XqfsfiJjUWAAAmL7mDR60215.jpg

1.安装nginx源码包

建立ngix软件夹用来存放nginx软件包

wKiom1XqfwmihLjLAAAW-YfOKp8694.jpg

wKiom1Xqf_bC23AQAADEd0E66k8664.jpg

添加一个进程的所有者和所属组为www,www为nginx进程的所有者和所属组。

wKioL1Xqg-_SRTyOAAA4VKl7SiM258.jpg

对源码包进行配置,--prefix指定nginx配置存放的目录,--user指定所有者,--group指定所属组,--with-http_ssl_module指定用户可以用https访问的模块,--with-http_stub_status_module指定通过web页面的方式查看nginx被访问的信息情况的模块。

wKioL1XqpCaiqISUAADTtUlmxps869.jpg

wKioL1XqplHgkg8pAAGRDq9gYdY281.jpg

wKiom1XqpDXCcVwvAADGUPOxsw0355.jpg

通过以上配置安装时出现以下错误http rewrite(地址重写模块需要pcre库,要求安装PCRE库),rewrite  地址重写   修改客户端访问自己的url 路径,使用perl风格正则表达式去匹配用户访问自己URL源路径 (PCRE library)。

wKiom1XqpKKiu66eAAGLeANsHnY870.jpg

查看系统安装的pcre包有那些,软件包中有那些,如果没有全部安装用yum安装,pcre-devel软件包为pcre软件提供库文件。

wKioL1XqqbKxnfG3AAGPyMnuuxA199.jpg

源码包 再次配置时又出现错误,错误如下。

wKiom1XqqDvC7WvgAAFlNKD5SxI975.jpg

安装openssl库文件

wKioL1XqqvWAIpQ8AAN5v6onhg4029.jpg

安装make&make install

wKioL1Xqq1njK097AABV8p3xP6M983.jpg

2.nginx目录下内容conf为配置文件目录,html为网页目录,logs为日志目录,sbin为启动目录。

wKiom1Xqqe6CD2NeAACtC9b9W8Y744.jpg

查看各个目录下有那些文件,nginx.conf 为主配置文件,nginx.conf.default为配置文件的模板,index.html为默认的网页,nginx为启动命令。

wKioL1XqrZyDMa8rAAIUoVMCveQ525.jpg

默认nginx的端口为80,查看是否有其他的进程占用80端口,如果有关闭。

wKiom1XqrDaxuMaNAAFNab18Q4A122.jpg

3.启动nginx服务(sbin/nginx,并且查看端口进程和logs下的内容,access.log为访问日志,error.log为错误日志,nginx.pid为进程pid号。

wKiom1XqrUqSS24zAAEqegcEnIc590.jpg

停止nginx服务

wKioL1XqsWXCm3xxAACVGViyCJU674.jpg

启动nginx的配置参数,-t为检查配置文件是否有错误,-v查看nginx版本信息,-V查看nginx配置参数,-c指定其他配置文件,-s停止nginx服务,-h查看帮助信息。

wKiom1XqsLKCSnWXAALCyEvd_nQ757.jpg

wKioL1XqsuGxT7eIAABGqmUcgME110.jpg

停止服务的其他方式

pkill   -9  nginx
kill  -信号   nginx
TERM, INT     快速关闭
QUIT     从容关闭,关闭主进程顺便关闭工作子进程
HUP       用新的配置开始新的工作进程从容关闭旧的工作进程
USR1     重新打开日志文件
USR2     平滑升级可执行程序
WINCH     从容关闭工作进程,不会立即关闭子进程

kill  -HUP  `cat /usr/local/nginx/logs/nginx.pid`   重启服务

实验(二)

实验目的:公司目前有多个网站要发布,由于资金有限并且为了节省资源,提高资源的利用率,公司决定在一台服务器上发布多个网站并且用户访问时做一些限制。

1.基于域名的虚拟主机

实验环境:

        服务器的IP地址:192.168.1.10,网页存放目录为/wwwdir和/bbsdir,

网页存放目录的默认网页为/wwwdir/index.html内容为wwwpage,/bbsdir/index.html内容为bbspage.主机名分别为:www.tarena.com 和 bbs.tarena.com.

       客户机的IP地址:192.168.1.20

修改主配置文件(删除主配置文件中的空行和有#开头的行),server代表有网页目录,listen监听的端口,server_name为主机名,location代表网页的存放信息,root为网页存放的目录,index为网页目录的网页。

wKiom1XqwumwePOAAACPrF1nVT4427.jpg

查看主配置文件是否有错误。

wKiom1XqyeyT6hSyAADCQgaQxqI281.jpg

wKiom1XqxYDwxxbHAAD0NDOJHgw288.jpg

重新启动nginx服务

wKioL1XqyqrAi8LzAAA73Vh35Kg173.jpg

创建目录 /wwwdir/index.html的内容为wwwpage,/bbdir/index.html的内容为bbspage.

wKiom1XqxkyQgIzMAAEpp8SOGJw542.jpg

在客户端测试是否可以访问网页

wKioL1XqyX6xyW3CAACnjBt5l-U110.jpg

wKioL1XqzPqSYwj8AACGFv2VDz8101.jpg

2.基于端口的虚拟主机(通过客户端访问的端口区分用户的访问)。

实验环境:

服务器的IP地址:192.168.1.10,网页存放目录为默认的html和/bbsdir,

网页存放目录的默认网页为index.html内容为wwwpage,/bbsdir/index.html内容为bbspage.主机名分别为:www.tarena.com

当用户访问http://www.tarena.com:80    显示的为默认的nginx网页内容为wwwpage

当用户访问http://bbs.tarena.com:8080    显示的为/bbsdir目录下的bbspage

(1).创建网页目录

wKioL1Xq8D-DwmeSAABtj8TIHuY625.jpg

(2).修改主配置文件

wKiom1Xq7wvw4Qt3AADBbMt2MiI306.jpg

(3).重新启动服务

wKiom1Xq7-3w6pEDAAA970NkLJU055.jpg

wKiom1Xq9kWjNlAPAABLjB8N46I642.jpg

(4).在客户端测试

wKioL1Xq8l-QKbTYAACpIjBq8IM786.jpg

3.实验目的:对页面做IP地址的绑定和端口的绑定,对访问页面的用户进行限制。

(1)nginx服务器端的IP地址为192.168.1.10,当用户访问http://www.tarena.com   显示的页面为默认的nginx网页,当用户访问http://www.tarena.com:8090 显示的页面为 /bbsdir的页面,

(2)只允许192.168.1.20用户访问http://www.tarena.com,其他所有人都不能访问。

客户端访问限制  +  用户验证     
deny  客户端地址          拒绝客户端访问
allow  客户端地址         允许客户端访问  *默认允许所有客户端访问
客户端地址表示方式:
all   所有客户端地址     、   192.168.1.1    某个ip地址     、 192.168.1.0/24    网段

(3)当用户访问网站时需要验证才能访问。

(1)修改nginx主配置文件

wKiom1Xq_sjAy2_5AAEWBGuVp7I479.jpg

客户端测试

wKiom1Xq_aCDmpvXAACOcDkOPgM903.jpg

(2)修改主配置文件

wKioL1XrB7yieECCAADB3h4xohM255.jpg

在客户端进行测试

wKioL1XrB-7RyMZXAADCJ8NcmOs333.jpg

wKioL1XrB_igRcnzAADU_wODOfM168.jpg

(3)修改主配置文件auth_basic 为用户需要输入用户名和密码,auth_basic_user_file为需要加载 user.txt文件 ,user.txt里放的是用户名和密码。

wKiom1Xs2BWTDqIDAAGrK--iy1U444.jpg

生成用户名和密码的软件包

wKiom1XsyJWDT07lAABehTyl4wY142.jpg

生成用户名和密码

wKiom1XszBzxni_4AADZAcmNN4Y786.jpg

客户机需要有图像界面打开浏览器输入www.tarena.com时会弹出一个对话框,需输入用户名和密码

实验(三)

实验目的:平滑升级nginx服务(不用停止服务,在线升级)。

解压1.05版本的nginx软件,并进行配置。

wKiom1Xs0jjA7We2AALYDGqWSGE994.jpg

wKioL1Xs1JTTeE5DAADBd_jMh68330.jpg

wKioL1Xs1QrAfZb5AAF-64bQ9Tg951.jpg

wKioL1Xs1Urz7ReTAAA_2Iw4nUc904.jpg

wKiom1Xs00WQXE6nAAGSmE3nhTA540.jpg

改变/user/local/nginx/sbin/nginx为nginx.old,把 当前 目录下的nginx放到、user/local/nginx/sbin/下

wKioL1Xs1kzxVFjDAAEMsrs5O9M935.jpg

平滑升级nginx服务

wKiom1Xs16iwofMlAAIjPRUOlnI890.jpg

实验(四)

实验目的:公司是一个视频网站有很多视频文件   音频文件  图片文件,为了防止别人链接自己的资源为自己谋利,公司要求网站禁止别人进行链接。

1.修改主配置文件

location匹配用户的url地址的,~代表匹配,*代表忽略字面大小写, ()代表匹配的内容,\代表转义符是点的转义符,$代表以什么结尾的,valid_referers为内置变量存放的是URL的值,URL类型有4种(none类型为没有网络路径的访问,blocked表示通过防火墙转换后的地址,网站主机名类型,网站所在区域的类型)。

wKioL1Xtb3exEANTAAKV4vZGgVI168.jpg

2.测试主配置文件是否有错误

wKiom1XtbYCwvvZNAAEL5KQHnak410.jpg

3.重新启动服务

wKiom1XtbfmxMohOAABz5H7TkWs548.jpg

总结:

域名虚拟主机   发布给公网客户端访问
ip的虚拟主机  +  端口的虚拟主机    测试或发布网站后台的管理页面

你可能感兴趣的:(用户验证,nginx平滑升级,用户访问控制,防盗链)的配置)