nginx和php-fpm服务部署在两台服务器上
用PHP开发网站时,传统的部署方式是将Nginx和php-fpm服务部署在同一台服务器上,在Docker大行其道的今天,是否可以将它们使用Docker分别部署呢?
答案是可以!
准备容器
这里我们使用官方的ubuntu和php镜像先创建两个容器
Home of Little Jelly
用PHP开发网站时,传统的部署方式是将Nginx和php-fpm服务部署在同一台服务器上,在Docker大行其道的今天,是否可以将它们使用Docker分别部署呢?
答案是可以!
准备容器
这里我们使用官方的ubuntu和php镜像先创建两个容器
FastAdmin框架有单点登录的配置,然好像不起什么作用,所以自己实现了一个。
原理:记录用户ID、用户名与session_id的对应关系,发生改变时,即视为重新登录,此时重新绑定关系,老的关系失效,强制清空session.
最近对几款安全扫描测试工具做了个简单的对比,评分及优缺点基于个人所用的技术栈,另因测试不充分,加上本人在安全测评领域纯属菜鸟,所以结果仅供参考。
工具 | 收费 | 多平台| 扫描能力 | 优点 | 缺点
ElasticSearch Mongo MySQL文档存储及检索对比。
测试环境:
1. 硬件配置:2核2G内存
2. 部署方式:Docker
3. CentOS 8.4
4. PHP 7.4.23
PHP中使用ElasticSearch。
composer安装elasticsearch
composer require elasticsearch/elasticsearch
PHP要使用XdevAPI扩展连接MySQL8,首先要安装MySQL8,而且需要为PHP安装配置`mysql_xdevapi`扩展,见之前的教程[PHP8安装MySQL xdevapi扩展](https://www.pimspeak.com/php8-mysql-xdevapi-extension.html)。
装好之后就可以连接了。
示例代码
Nginx PHP安全配置
1. 错误显示
配置php.ini
要在PHP中使用MySQL8的文档存储Document Store,需要配置`mysql_xdevapi`扩展。配置过程比较复杂,依赖颇多,详细步骤如下。
环境:CentOS8 + PHP8 + MySQL8
首先安装gcc
Docker下的CentOS8安装php7和php8版本,php-fpm都启动不起来,报错
php-fpm: error while loading shared libraries: libonig.so.5: cannot open shared object file: No such file or directory failed
借助[SabreDav](https://sabre.io/dav/)的开源库,PHP可以同时作为WebDav Server和Client,而且操作非常方便。
作为Server,可以提供WebDav服务对外使用。
作为Client,则可以作为客户端与支持WebDav的服务器交互。
有了它,远程操作文件又多了一种选择,包括但不限于