Nginx网站服务
这里写目录标题
- 一. 基于授权的访问控制
- 1. 简介
- 2. 基于授权的访问控制步骤
- (1)使用htpasswd生成用户认证文件
- (2)修改文件权限
- (3)修改主配置文件
- (4)检测语法、重启服务
- (5)用浏览器访问网站,检测控制效果
- 二. 基于客户端的访问控制
- 1. 简介
- 2. 基于客户端的访问控制步骤
- (1)修改主配置文件
- 三. Nginx虚拟主机
- 1. 基于域名的虚拟主机
- (1) 设置客户端域名解析
- (2)准备测试目录和网页
- (3)修改配置文件
- (4)测试
- 2. 基于IP的虚拟主机
- (1)为服务器设置多个ip地址
- (2)修改配置文件,添加虚拟IP
- (3)测试
- 3. 基于端口的虚拟主机
- (1)选择端口映射同一IP
- (2)测试
- 四. LNMP架构部署及应用
- 1. 安装PHP解析环境
- (1)编译安装PHP
- (2)安装后的调整
- (3)安装ZendGuardLoader
- 2. 配置Nginx支持PHP环境
- (1)启用php-fpm进程
- (2)配件Nginx支持PHP解析
- (3)PHP测试
- 2. 在LNMP平台中部署Web应用
- (1)下载并部署程序代码
- (2)创建数据库
- (3)安装Web应用
一. 基于授权的访问控制
1. 简介
Nginx 与 Apahce 一样,可以实现基于用户授权的访问控制,当客户端想要访问相应网站或者目录时,要求用户输入用户名和密码才能正常访问,配置步骤与 Apache 基本一致。 概括为以下几个步骤
-
生成用户密码认证文件
-
修改主配置文件相对应目录,添加认证配置项
-
重启服务,访问测试
2. 基于授权的访问控制步骤
(1)使用htpasswd生成用户认证文件
使用 htpasswd 生成用户认证文件,如果没有该命令,可使用 yum 安装 httpd-tools软件包,用法与 Apache 认证时方式相同,如:htpasswd -c /usr/local/nginx/passwd.db test。在/usr/local/nginx/目录下生成了 passwd.db 文件,用户名是 test,密码输入 2 次。在passwd.db 中生成用户和密码的密文
(2)修改文件权限
修改密码文件权限为 400,将所有者改为 nginx,设置 Nginx 的运行用户能够读取
(3)修改主配置文件
[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf
(4)检测语法、重启服务
(5)用浏览器访问网站,检测控制效果
二. 基于客户端的访问控制
1. 简介
基于客户端的访问控制是通过客户端 IP 地址,决定是否允许对页面访问。Nginx 基于客户端的访问控制要比 Apache 简单,规则如下:
-
deny IP/IP段:拒绝某个IP或IP段的客户端访问
-
allow IP/IP段:允许某个IP或IP段的客户端访问
-
规则从上往下执行,如匹配则停止,不再往下匹配
2. 基于客户端的访问控制步骤
(1)修改主配置文件
[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf
三. Nginx虚拟主机
利用虚拟主机,不用为每个要运行的网站提供一台单独的 Nginx 服务器或单独运行一组 Nginx 进程,虚拟主机提供了在同一台服务器,同一组 Nginx 进程上运行多个网站的功能。跟 Apache 一样,Nginx 也可以配置多种类型的虚拟主机,分别是基于 IP 的虚拟主机、基于域名的虚拟主机、基于端口的虚拟主机
使用 Nginx 搭建虚拟主机服务器时,每个虚拟 Web 站点拥有独立的“server{}”配置段,各自监听的 IP 地址、端口号可以单独指定,当然网站名称也是不同的。
1. 基于域名的虚拟主机
(1) 设置客户端域名解析
修改hosts 文件,加入www.benet.com 和 www.accp.com 这两个域名
(2)准备测试目录和网页
(3)修改配置文件
[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf
(4)测试
2. 基于IP的虚拟主机
一台主机如果有多个 IP 地址,可以设置每一个 IP 对应一个站点。主机安装多个网卡可以有多个 IP,这里采用虚拟 IP 的方式使主机有多个 IP
(1)为服务器设置多个ip地址
(2)修改配置文件,添加虚拟IP
[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf
(3)测试
3. 基于端口的虚拟主机
(1)选择端口映射同一IP
[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf
(2)测试
四. LNMP架构部署及应用
LAMP 平台是目前应用最为广泛的网站服务器架构,其中“A”对应着 Web 服务软件 Apache。随着 Nginx 在企业中的使用越来越多,LNMP(或 LEMP)架构也越老越受到企业的青睐。
1. 安装PHP解析环境
(1)编译安装PHP
备注:
- libxml2-devel:libxml是一个用来解析XML文档的函数库
- libjpeg-devel #是一个完全用C语言编写的库,包含了被广泛使用的JPEG解码、JPEG编码和其他的JPEG功能的实现
- libpng-devel #libpng 是一套免费的、公开源代码的程序库,支持对 PNG 图形文件的创建、读写等操作
- GD指的是Graphic Device,PHP的GD库是用来处理图形的扩展库,通过GD库提供的一系列API,可以对图像进行处理或者直接生成新的图片。PHP除了能进行文本处理以外,通过GD库,可以对JPG、PNG、GIF、SWF等图片进行处理
- zlib-devel #Zlib是一个压缩和解压模块
注意:
-
–with-mysqli=mysqlnd需要用ip地址的方式连接数据库,既可以是php和mysql装在同一个服务器,也可以装在不同的服务器。用127.0.0.1本地连接不需要为连接授权,用192.168.10.101连接需要授权,哪怕连接本地数据库
-
–with-mysqli=/usr/bin/mysql_config需要用localhost连接数据库,只能用于本地连接,也就是php和mysql装在同一个服务器上
(2)安装后的调整
(3)安装ZendGuardLoader
2. 配置Nginx支持PHP环境
(1)启用php-fpm进程
启动、检查端口
(2)配件Nginx支持PHP解析
调用本机的 php-fpm 进程
(3)PHP测试
2. 在LNMP平台中部署Web应用
(1)下载并部署程序代码
(2)创建数据库
(3)安装Web应用
访问地址:http://192.168.10.101/bbs/install/index.php