Nginx

本篇博客内容主要介绍nginx 各模块功能和实验步骤

ngx_http_fastcgi_module模块

转发请求到FastCGI服务器,不支持php模块方式

  • fastcgi_pass address;

address为后端的fastcgi server的地址

  • fastcgi_index name;
    f

astcgi默认的主页资源
示例:fastcgi_index index.php;

  • fastcgi_param parameter value [if_not_empty];
    设置传递给 FastCGI服务器的参数值,可以是文本,变 量或组合

  • fastcgi_cache_path
    定义fastcgi的缓存;
    格式:

path 缓存位置为磁盘上的文件系统
max_size=size 磁盘path路径中用于缓存数据的缓存空间上限
levels=levels:缓存目录的层级数量,以及每一级的目录数量
示例:leves=1:2:2
keys_zone=name:size k/v映射的内存空间的名称及大小
inactive=time 非活动时长

  • fastcgi_cache zone | off;

调用指定的缓存空间来缓存数据
可用位置:http, server, location

  • fastcgi_cache_key string;

定义用作缓存项的key的字符串
示例:fastcgi_cache_key $request_rui

  • fastcgi_cache_methods GET | HEAD | POST …;

为哪些请求方法使用缓存

  • fastcgi_cache_min_uses number;

缓存空间中的缓存项在inactive定义的非活动时间内至少要被访问到 此处所指定的次数方可被认作活动项

  • fastcgi_keep_conn on | off;

收到后端服务器响应后,fastcgi服务器是否关闭连接,建议启用长连接

  • fastcgi_cache_valid [code …] time;

不同的响应码各自的缓存时长


实验

前提要把selinux 关闭 ,iptables清空,时间同步
第一步;
把192.168.243.6 虚拟机作为fastcgi服务器
把192.168.243.7虚拟机作为nginx服务器
当作为fastcgi服务器时,需要安装 php-fpm
php-fpm PHP FastCGI进程管理器
(本机centos6.9挂载的镜像包中没有php-fpm包,需要网络epel源)
1、打开php-fpm监听端口及添加允许监听的服务器ip

[root@centos6 ~]#vim /etc/php-fpm.d/www.conf 
12 listen = 9000         监听端口
24 listen.allowed_clients = 127.0.0.1,192.168.243.7

2、在/app/php新建php文件

[root@centos6 php]#ls
a.php  index.php   

第二步:

把192.168.243.7虚拟机作为nginx 服务器
这里写图片描述
验证:
在浏览器输入:http://www.a.com/index.php


通过/status和/ping来获取fpm server状态信息

首先在fastcgi服务器

vim /etc/php-fpm.d/www.conf    中打开ping 和status 端口
133 ping.path = /ping
121 pm.status_path = /status

然后配置nginx 服务器
这里写图片描述
验证
http://192.168.243.7/ping 显示界面是pong
http://192.168.243.7/status 显示状态


定义fastcgi(动态数据)的缓存;
[root@centos7 ~]#vim /etc/nginx/nginx.conf 

这里写图片描述

[root@centos7 ~]#vim /etc/nginx/conf.d/vhosts.conf

这里写图片描述

重新检测加载,会自动生成缓存文件夹   
nginx -t    
nginx -s reload 
测试:缓存加速效果
ab -c 100 -n 2000 http://192.168.243.7/index.php

基于nginx+ php-fpm + mariadb 搭建wordpress

实验简易拓扑图
这里写图片描述
实验配置
这里写图片描述
第一步
安装mariadb

[root@R1 ~]#yum -y install mariadb-server

安装完成后启动本服务,检查3306端口是否打开
创建数据库,并添加用户及使用权限

MariaDB [(none)]> create database  wpdb;
MariaDB [(none)]> grant all on wpdb.* to wpuser@'192.168.243.6' identified by 'CENTOS';

第二步;
fastcgi服务器
安装php-mysql 和php-fpm软件包
安装完后并重新启动php-fpm服务
建立一个连接测试数据库是否成功的php文件
[root@centos6 ~]#vim /app/php/index.php
这里写图片描述
安装wordpress软件包

[root@centos6 php]#tar xvf wordpress-4.8.1-zh_CN.tar.gz
[root@centos6 php]#mv wordpress blog
[root@centos6 blog]#mv wp-config-sample.php wp-config.php 

[root@centos6 blog]#vim wp-config.php

23 define('DB_NAME', 'wpdb');
25 /** MySQL数据库用户名 */
26 define('DB_USER', 'wpuser');
28 /** MySQL数据库密码 */
29 define('DB_PASSWORD', 'CENTOS');
31 /** MySQL主机 */
32 define('DB_HOST', '192.168.243.8');

测试:
http://192.168.243.7/blog/index.php


ngx_http_upstream_module模块

**用于将多个服务器定义成服务器组,而由proxy_pass, fastcgi_pass等指令进行引用
Context: http**
在nginx 服务器

vim /etc/nginx/nginx.conf

这里写图片描述

vim /etc/nginx/conf.d/vhosts.conf

这里写图片描述
192.168.243.6和192.168.243.8两台机器确保80端口打开,
验证:
for i in {1..10};do curl http://www.a.com ;done; 实现调度成功
192.168.243.6
192.168.243.6
192.168.243.6
192.168.243.8
192.168.243.6
192.168.243.6
192.168.243.8
192.168.243.6
192.168.243.6
192.168.243.8

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值