php-fpm

"Access to the script '/data/www/jiemo/index.html' has been denied (see security.limit_extensions)

前提是你 提交于 2019-12-11 20:02:03
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 访问index.html 在里面写了php代码,执行后显示 Access Denied 然后报错日志显示: FastCGI sent in stderr: "Access to the script '/data/www/jiemo/index.html' has been denied (see security.limit_extensions)" while reading response header from upstream 处理办法是在php-fpm.conf中的配置文件里,找到security.limit_extensions,添加一个. html security.limit_extensions = .html .php .php3 .php4 .php5 这个指令的作用是:限制主脚本FPM允许解析的扩展。这可以防止web服务器端的配置错误。您应该仅将FPM限制为.php扩展,以防止恶意用户使用exectute php代码的其他扩展。 所以要解析 .html执行php,需要在这块添加。 来源: oschina 链接: https://my.oschina.net/jiemowudi/blog/3141911

LNMP架构介绍、MySQL安装、PHP安装 、Nginx源码安装

天大地大妈咪最大 提交于 2019-12-11 17:29:12
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> LNMP架构介绍 和LAMP唯一不同的是,LNMP中的N指的是Nginx(类似于Apache的一种web服务软件)。目前这种环境的应用也非常多。Nginx设计的初衷是提供一种快速、高效、多并发的Web服务软件。在静态页面的处理上,Nginx较Apache更胜一筹,但在动态页面的处理上,Nginx并不比Apache有优势。但是目前还是有很多爱好者对Nginx比较热衷。随着Nginx技术的不断成熟,它在Web服务软件领域的地位也会越来越高。 并且php是作为一个独立服务存在的,这个服务叫做php-fpm。Nginx直接处理静态请求,动态请求会转发给php-fpm。 MySQL安装 1. 删除之前安装的mysql [root@xuexi-001 ~]# ps aux | grep mysql root 1432 0.0 0.0 112720 972 pts/0 R+ 22:46 0:00 grep --color=automysql [root@xuexi-001 ~]# rm -rf /usr/local/mysql [root@xuexi-001 ~]# rm -rf /etc/init.d/mysqld 2.安装mysql过程 [root@xuexi-001 ~]# cd /usr/local/src/

PHP大文件分片上传的实现方法

﹥>﹥吖頭↗ 提交于 2019-12-11 15:24:46
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 一、前言 在网站开发中,经常会有上传文件的需求,有的文件size太大直接上传,经常会导致上传过程中耗时太久,大量占用带宽资源,因此有了分片上传。 分片上传主要是前端将一个较大的文件分成等分的几片,标识当前分片是第几片和总共几片,待所有的分片均上传成功的时候,在后台进行合成文件即可。 二、开发过程中遇到的问题 分片的时候每片该分多大size?太大会出现“413 request entity too large” 分片上传的时候并不是严格按照分片的序号顺序上传,如何判断所有的分片均上传成功? 合成文件的时候如何判断保证合成一个完整的文件而不出错?多个分片同时上传的时候,读写文件没有独占锁的时候会导致合成错误。 三、问题解决 当出现413的时候,修改了 nginx.conf 和php.ini (1)nginx中添加client_max_body_size和client_body_buffer_size (2)php.ini添加post_max_size 和 upload_max_filesize 重启nginx和php-fpm 代码逻辑梳理和分享 (1)先获取当前分片是第几片以及总共几片 (2)创建一个文件夹用来存储所有的分片以及合成的文件 (3)变量$done初始为true,用来判断是否所有的分片都上传完成

Mac 下 Nginx、PHP、MySQL 和 PHP-fpm 的安装和配置

混江龙づ霸主 提交于 2019-12-11 05:50:11
首先先装一个交 homebrew 一个类似于npm 的包管理器 可以用来安装 nginx 和MySQL 安装命令 brew install 软件名 就好了 可能你在安装过程中 你会遇到各种各样的问题 祝你好运吧。我搞了好久,不断的查资料。 1. 安装 Mac 的包管理器 - homebrew / usr / bin / ruby - e " $ ( curl - fsSL https: / / raw . githubusercontent . com / Homebrew / install / master / install ) " 如果出现安装不成功,首先检查一下是不是自己网有问题如果网没问题,但是就是打不开。那就只能手动安装 去github 把这个仓库的文件夹全部下载下来。 Homebrew的安装建议直接在官方Git下载后手动安装: 1、下载Homebrew Git上所有文件 https://github.com/Homebrew/brew 2、把Homebrew文件夹中的文件复制到/usr/local/目录下,如果没有的文件夹请自行创建。 3 怎么检测自己的homebrew 是不是安装好了直接 在终端 输入 brew -v 就好了 brew 常用命令 安装软件:brew install 软件名,例:brew install wget 搜索软件:brew search

配置nginx 支持php

霸气de小男生 提交于 2019-12-10 16:21:32
一、确保php-fpm已经启动: ps -A | grep php-fpm 如果没有启动,则启动php-fpm: /usr/local/sbin/php-fpm 查看是否启动成功: root@iZ25fm7iewtZ:/usr/local/etc# ps -ef | grep php-fpm root 3691 1 0 18:49 ? 00:00:00 php-fpm: master process (/usr/local/etc/php-fpm.conf) www-data 3692 3691 0 18:49 ? 00:00:00 php-fpm: pool www www-data 3693 3691 0 18:49 ? 00:00:00 php-fpm: pool www root 4982 29553 0 18:59 pts/1 00:00:00 grep --color=auto php-fpm root@iZ25fm7iewtZ:/usr/local/etc# netstat -tnl | grep 9000 tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 修改nginx的配置文件,支持php文件的解析,找到location的添加位置,在后面添加下面这个location location ~ \.php$ { root /usr

CentOS 7升级php5.4到php7.2

北城余情 提交于 2019-12-10 15:58:49
原因: CentOS 7下yum安装PHP版本默认是5.4的,但新框架要求PHP版本在7以上,所以把PHP升级一下了。 查看yum的可安装的php版本列表: 1 yum provides php 开始升级PHP更新源: 1 rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm 2 rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm 3 yum remove php-common -y 4 yum install -y php72w php72w-opcache php72w-xml php72w-mcrypt php72w-gd php72w-devel php72w-mysql php72w-intl php72w-mbstring 查看版本: 1 php -v 2 PHP 7.2.14 (cli) (built: Jan 12 2019 12:47:33) ( NTS ) 3 Copyright (c) 1997-2018 The PHP Group 4 Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies 5 with Zend OPcache v7.2.14

ssl 原理、生成ssl密钥、配置nginx ssl```

ぐ巨炮叔叔 提交于 2019-12-10 02:03:24
ssl 原理 SSL工作流程 1.浏览器发送一个https的请求给服务器; 2.服务器要有一套数字证书,可以自己制作(后面的操作就是阿铭自己制作的证书),也可以向组织申请,区别就是自己颁发的证书需要客户端验证通过,才可以继续访问,而使用受信任的公司申请的证书则不会弹出>提示页面,这套证书其实就是一对公钥和私钥; 服务器会把公钥传输给客户端; 客户端(浏览器)收到公钥后,会验证其是否合法有效,无效会有警告提醒,有效则会生成一串随机数,并用收到的公钥加密; 客户端把加密后的随机字符串传输给服务器; 服务器收到加密随机字符串后,先用私钥解密(公钥加密,私钥解密),获取到这一串随机数后,再用这串随机字符串加密传输的数据(该加密为对称加密,所谓对称加密,就是将数据和私钥也就是这个随机字符串>通过某种算法混合在一起,这样除非知道私钥,否则无法获取数据内容); 服务器把加密后的数据传输给客户端; 客户端收到数据后,再用自己的私钥也就是那个随机字符串解密; http和https区别: https通信是加密的。数据包在传输的时候可能被***抓包截取。如果是做https的话,抓取的包是加密的也不能解密 生成SSL密钥对 cd /usr/local/nginx/conf openssl genrsa -des3 -out tmp.key 2048//key文件为私钥 openssl rsa -in

centos6.4下编译安装LNMP环境

妖精的绣舞 提交于 2019-12-09 22:32:04
自PHP-5.3.3起,PHP-FPM加入到了PHP核心,编译时加上--enable-fpm即可提供支持。 PHP-FPM以守护进程在后台运行,Nginx响应请求后,自行处理静态请求,PHP请求则经过fastcgi_pass交由PHP-FPM处理,处理完毕后返回。 Nginx和PHP-FPM的组合,是一种稳定、高效的PHP运行方式,效率要比传统的Apache和mod_php高出不少。 //系统说明 1.centos6.4 IP:10.10.54.157 2.软件版本:nginx1.4.5+mysql5.5+php5.4 //编译安装nginx1.4.5 1.下载nginx1.4.5 shell> wget 2.解压nginx.1.4.5 shell> tar xvf nginx-1.4.5.tar.gz 3.编译安装 shell> yum -y install zlib-devel pcre-devel openssl-devel #nginx依赖包 shell> ./configure --prefix=/usr/local/nginx --with-pcre --with-http_stub_status_module --user=apache --group=apache --with-http_ssl_module --with-http_gzip_static

Macbookpro的php-fpm配置解决

喜欢而已 提交于 2019-12-09 20:39:51
重点: 问题原因 ---- 找对应解决方法 which 命令:which php ls -al 命令 ps -ef | grep php命令 php --ini 问题: 运行php-fpm出现错误 LIUQINdeMacBook-Pro:~ liuqin$ php-fpm [09-Dec-2019 18:11:25] ERROR: failed to open error_log (/usr/var/log/php-fpm.log): No such file or directory (2) [09-Dec-2019 18:11:25] ERROR: failed to post process the configuration [09-Dec-2019 18:11:25] ERROR: FPM initialization failed 错误原因说是找不到目录/usr/var/log/php-fpm.log 就打开/usr/ LIUQINdeMacBook-Pro:~ liuqin$ ls /usr/ bin/ libexec/ sbin/ standalone/ lib/ local/ share/ 发现/usr/下就没有var目录 没有我们就创建,但是权限不允许,root权限也不可以 which命令查找目录位置 LIUQINdeMacBook-Pro:~ liuqin$

mac nginx php

試著忘記壹切 提交于 2019-12-09 16:18:20
nginx 通过homebrew安装在/usr/local/Cellar/nginx/1.17.3目录里面,如果修改了/etc/hosts中的虚拟主机之后,需要cd到/usr/local/Cellar/nginx/1.17.3/bin目录里面执行sudo nginx -s reload; 如果需要重启php-fpm,可以在任何目录执行sudo killall php-fpm,然后执行sudo php-fpm; 如果需要重启php72,则可以运行brew services restart php72; 来源: CSDN 作者: silk_java 链接: https://blog.csdn.net/silk_java/article/details/103458821