mod mpm event php7.1,CentOS 7 安裝 PHP-FPM 及使用 mod_mpm_event
Apache 配置 PHP 一般會預設用 mod_php 的方法安裝, 安裝 Nginx 便會使用 PHP-FPM。但如果在 Apache 不想使用預設的 prefork 作為 MPM (通常基於效能因素), 想使用 worker 或 event, 便需要使用 PHP-FPM 的方法安裝 PHP。
本文會示範在 CentOS 7 安裝 Apache 及 PHP-FPM 的方法。
首先用 yum 安裝 httpd 及 php-fpm:
[root@opencli ~]# yum install httpd httpd-tools mod_ssl php-fpm
Apache 預設使用 mod_mpm_prefork, 改用 mod_mpm_event, 開啟 /etc/httpd/conf.modules.d/00-mpm.conf:
[root@opencli ~]# vi /etc/httpd/conf.modules.d/00-mpm.conf
將 mpm_prefork_module 一行, 在前面加上註解:
# LoadModule mpm_prefork_module modules/mod_mpm_prefork.so
然後將 mpm_event_module 一行前的註解刪除:
LoadModule mpm_worker_module modules/mod_mpm_worker.so
修改好上面的設定後, 現在設定 PHP-FPM, 將所有 PHP 的請求傳送給 PHP-FPM:
[root@opencli ~]# vi /etc/httpd/conf.d/php.conf
以下是 php.conf 的內容:
# Tell the PHP interpreter to handle files with a .php extension.
# Proxy declaration
# we must declare a parameter in here (doesn't matter which) or it'll not register the proxy ahead of time
ProxySet disablereuse=off
# Redirect to the proxy
SetHandler proxy:fcgi://php-fpm
#
# Allow php to handle Multiviews
#
AddType text/html .php
#
# Add index.php to the list of files that will be served as directory
# indexes.
#
DirectoryIndex index.php
#
# Uncomment the following lines to allow PHP to pretty-print .phps
# files as PHP source code:
#
#
# SetHandler application/x-httpd-php-source
#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# Tell the PHP interpreter to handle files with a .php extension.
# Proxy declaration
# we must declare a parameter in here (doesn't matter which) or it'll not register the proxy ahead of time
ProxySetdisablereuse=off
# Redirect to the proxy
SetHandlerproxy:fcgi://php-fpm
#
# Allow php to handle Multiviews
#
AddTypetext/html.php
#
# Add index.php to the list of files that will be served as directory
# indexes.
#
DirectoryIndexindex.php
#
# Uncomment the following lines to allow PHP to pretty-print .phps
# files as PHP source code:
#
#
# SetHandler application/x-httpd-php-source
#
預設的 php-fpm 設定檔會使用 TCP 連線, 為了有更佳的效能, 改用 socket, 開啟 PHP-FPM 設定檔 /etc/php-fpm.d/www.conf:
[root@opencli ~]# vi /etc/php-fpm.d/www.conf
以下是需要修改的內容:
; listen = 127.0.0.1:9000
listen = /var/run/php-fpm/default.sock
1
2
;listen=127.0.0.1:9000
listen=/var/run/php-fpm/default.sock
listen.allowed_clients = 127.0.0.1
listen.owner = apache
listen.group = apache
listen.mode = 0660
user = apache
group = apache
1
2
3
4
5
6
listen.allowed_clients=127.0.0.1
listen.owner=apache
listen.group=apache
listen.mode=0660
user=apache
group=apache
設定完成後, 現在啟動 httpd 及 php-fpm, 並設定開機自動啟動:
[root@opencli ~]# systemctl enable php-fpm
[root@opencli ~]# systemctl enable httpd
[root@opencli ~]# systemctl start php-fpm
[root@opencli ~]# systemctl start httpd
現在需要設定 firewalld, 開放 port 80 及 443 對外連線:
[root@opencli ~]# firewall-cmd –zone=public –permanent –add-service=http
[root@opencli ~]# firewall-cmd –zone=public –permanent –add-service=https
[root@opencli ~]# firewall-cmd –reload
最後可以測試一下 PHP 是否可以透過 PHP-FPM 正常執行, 執行以下指令建立 PHP 測試頁面:
[root@opencli ~]# echo “<?php phpinfo(); ?>” > /var/www/html/info.php
用瀏覽器開啟上面的頁面 (http://xxx.xxx.xxx.xxx/info.php), 如果可以看到 phpinfo 的畫面, 並看到 Server API 是 “FPM/FastCGI”, 便表示安裝成功了:
你可能感興趣的內容:
mod mpm event php7.1,CentOS 7 安裝 PHP-FPM 及使用 mod_mpm_event相关推荐
- CentOS下安裝Nvidia docker 2.0:[Errno 256] No more mirrors to try錯誤及解決方式
CentOS下安裝Nvidia docker 2.0:[Errno 256] No more mirrors to try. [Errno 14] HTTPS Error 404 - Not Foun ...
- [Python學習筆記] 在Centos上安裝 Django
曾在模擬器跟Digital Ocean上安裝成功,我在 Digital Ocean上的是CentOS 7 x64,模擬器的則是Centos 6. 雖然Centos 本身已經裝好 Python 但是是2 ...
- php70wfpm,CentOS 7 安裝 Nginx、PHP7、PHP-FPM
修改 PHP-FPM listen 的方式 若想將 PHP-FPM listen 的方式,改成 unix socket,可以編輯 /etc/php-fpm.d/www.conf 將 listen = ...
- CentOS 7安裝视频解码器
装了centos,但不能播放视频...我要看视频学习啊... 下载gstreamer 链接:http://pan.baidu.com/s/1yLcRW 密码:h159 解压后放到 /usr/lib64 ...
- worker mpm php,Ubuntu 16.04 安裝 Apache2.4 + mpm_worker + fastcgi + php7.0
之前寫過一篇 Ubuntu 16.04 在 Apache2.4 跑 PHP7.0 是用 mod_php 跑來的,而 mod_php 是使用 mpm_prefork 來跑,這篇主要要說的是 mpm_wo ...
- mysql5.7版本源_用最新MySQL 8.0的源安裝MySQL 5.7版本(CentOS 7環境下)
起因: 從官網下了MySQL最新8.0版本的源,安裝了MySQL 8.0.13,但是發現版本太新了跟其他軟件不兼容,而且改了半天其他軟件配置都沒改好(囧rz)...算了,卸載了8.0,還是安回5.7的 ...
- 沈逸老师ubuntu速学笔记(2)-- ubuntu16.04下 apache2.4和php7结合编译安装,并安裝PDOmysql扩展...
1.编译安装apache2.4.20 1 第一步: ./configure --prefix=/usr/local/httpd --enable-so 2 第二步: make 3 第三步: sudo ...
- Apache Maven 3.0.3 (yum) 安裝 (CentOS 6.4 x64)
介紹 http://maven.apache.org/ Maven是一個專案的開發,管理和綜合工具. 下載 http://maven.apache.org/download.cgi 參考 http:/ ...
- CentOS 5.4 安裝 boost 1.4.1 筆記 - 杨毅的电子笔记
CentOS 5.4 安裝 boost 1.4.1 筆記 - 杨毅的电子笔记 CentOS 5.4 安裝 boost 1.4.1 筆記 - 杨毅的电子笔记 CentOS 5.4 安裝 boost 1. ...
- CentOS 7下編譯安裝和配置GoldenDict
GoldenDict發佈於GNU GPLv3+許可下,也許其它平臺有更好的選擇,但它是Linux下最好用的免費詞典應用,其兼容另一款與之比肩的同類應用StarDict的詞典文件格式,還有強大的Mdic ...
最新文章
- MFC两个复选框互斥设置
- 关于分布式锁的面试题都在这里了
- Sysnoise5.6安装教程
- Bash脚本报错:“/bin/bash^M: bad interpreter: No such file or directory”
- RedHat Enterprise AS4安装步骤
- Logistics模型预测银行贷款违约
- 未签名的应用程序请求对系统进行无限制访问_OWASP Top 10 2017 10项最严重的 Web 应用程序安全风险 (完结篇)...
- Eureka的工作原理以及它与ZooKeeper的区别
- IIS(IISReset.exe)命令行(备忘)
- (89c51)16x16点阵屏幕的实现
- 【路径规划】基于蚁群算法求解带容量距离约束的车辆路径问题(CDVRP)matlab代码
- Redis知识点整理(详讲)
- 易想团购 注入 user.php,易想购物(easethink)存在sql注入漏洞,附利用测试POC
- 域组策略与本地组策略
- WHT, SLANT, Haar
- EDIUS中怎么快速实现色彩平衡滤镜较色
- http://sishuok.com/forum/blog/index.html?search_keywords=%E7%A0%94%E7%A3%A8%E8%AE%BE%E8%AE%A1%E6%A8%
- MTK Http Socket GPRS以及解析器和下载器概述
- MIUI黑科技之小米直达服务:Web 般的流畅体验+更少的卡顿、延迟
- 基于ARM开发板的智能家居控制系统设计
热门文章
- as常用固定搭配_英语专业四级常用固定搭配
- 华三服务器升级文档,H3C交换机升级步骤
- 搭建sip软电话环境
- 12 初探肿瘤异质性
- Java中的String的getBytes()方法
- html调查问卷页面,html+js 问卷调查页面的展示以及form提交
- python实现 stft_scipy-Python中的可逆STFT和ISTFT
- 计算机无steam服务,有了这个,或许以后都不用登录电脑的Steam了
- SteamVR Unity工具包(三):控制器交互
- excel自动调整列宽_Java 设置Excel自适应行高、列宽