nginx-fastcgi 反向代理

时间:2021-09-17 00:20:20

Nginx处理php页面 用fpm-server  基于fastcgi模块实现

Ngx_http_proxy_module  只能反代后端http server的主机

Ngx_fastcgi_proxy_module   反代后端服务器为fastcgi的主机

Lnmp: nginx+php(fpm-server)+mysql

实验:

需要2台服务器完成 : nginx+fpm-server

Rs上 = fpm

Yum  install  php-fpm  php-mysql  php-mbstring  php-mcrypt  mariadb-server  -y

Cd   /etc/php-fpm.d

Vim www.conf

Listen =0.0.0.0:9000   监听

Listen.allowed_clients=     允许客户访问 注销后默认所有

Pm.status_path = /status    启动状态检查

Ping.path = /ping           ping检查

Php_value[session.save_path] = /vat/lib/php/session     回话保持目录属主属组要是apache

Mkdir  -p  /var/lib/php/session

Chown  apache:apache  /var/lib/php/session

Systemctl  start  php-fpm.service

查看9000端口启动

在nginx 上

location ~*\.php$ {

fastcgi_pass 192.168.10.2:9000;  调用

fastcgi_param SCRIPT_FILENAME  /var/www/html/$fastcgi_script_name;    传递参数

include fastcgi_params;

fastcgi_index index.php;

}

location ~*^/(status|ping)$ {

include fastcgi_params;

fastcgi_pass 192.168.10.11:9000

fastcgi_param SCRIPT_FILENAM   $fastcgi_script_name;

}

在nginx 下有一个fastcgi_params  的文件  里面设定了把那些参数传给后端的服务器

在rs上

Vi index.php

<?php

Phpinfo()

?>

访问测试: 192.168.220.130/index.php

nginx-fastcgi 反向代理

添加status  | ping  健康检查

location ~*^/(status|ping)$ {

fastcgi_pass 192.168.10.2:9000;

fastcgi_param SCRIPT_FILENAME  /var/www/html/$fastcgi_script_name;

include  fastcgi_params;

}

nginx-fastcgi 反向代理

连接mysql 测试

在rs上的mysql配置文件中把域名解析的两个选项关闭

Vim  /etc/my.cf

Skip_name_resolve=on

Innodb_file_per_table=on

启动:sysrmctl  start   mariadb.service

Mysql_secure_installation  命令可以设置mysql密码

这里部署一个phpmyadmin  应用来实验、

下载包:

scp phpMyAdmin-4.0.10.20-all-languages.tar.gz  192.168.10.2:/home/

Tar  -zxvf  phpMyAdmin-4.0.10.20-all-languages.tar.gz  -C /var/www/html/

给phpMyAdmin-4.0.10.20 目录创建个软连接

Ln  -sv  phpMyAdmin-4.0.10.20   pma

nginx-fastcgi 反向代理

因为nginx没有静态图片所以这里静态图片没有显示

为了可以显示在nginx上也解压此包

# tar -zxvf phpMyAdmin-4.0.10.20-all-languages.tar.gz  -C /usr/share/nginx/html/

ln -sv phpMyAdmin-4.0.10.20-all-languages  pma

在访问就可以了

3 做压力测试  ab

ab  -c 100 -n 5000 http://192.168.220.130/pma/index.php

添加缓存功能:

Pastcgi_cache_path    定义缓存

Vim  /etc/nginx/nginx.conf

fastcgi_cache_path /data/nginx/fastcgi  levels=1:1:2 keys_zone=fcache:20m max_szie=2g;

调用

fastcgi_cache fcache;

fastcgi_cache_key $request_uri;

fastcgi_cache_valid any 1m;