1
2
3
4
5
6
7
8
|
YUM 安装 rpm -Uvh https: //dl .fedoraproject.org /pub/epel/epel-release-latest-7 .noarch.rpm
rpm -Uvh https: //mirror .webtatic.com /yum/el7/webtatic-release .rpm
yum install php71w php71w-mysql php71w-odbc php71w-common php71w-embedded php71w-pgsql php71w-xml php71w-ldap php71w-fpm php71w-gd php71w-pdo php71w-devel php71w-mbstring php71w-mcrypt php71w-cli php71w-json php71w-imap php71w-bcmath mod_php71w php71w-pear
rpm -qa | grep php
systemctl start php-fpm.service netstat -lntup | grep 9000
whereis php-fpm
|
编译安装
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
|
yum -y install libxml2 libxml2-devel openssl openssl-devel curl-devel libjpeg-devel libpng-devel freetype-devel libmcrypt-devel openldap openldap-devel
cp -frp /usr/lib64/libldap * /usr/lib/
ln -s /usr/lib64/liblber * /usr/lib/
groupadd -g 58 nginx useradd -u 58 -g 58 -M nginx -s /sbin/nologin
cd /usr/local/src
wget http: //cn2 .php.net /distributions/php-7 .1.11. tar .gz
tar zxvf php-7.1.11. tar .gz
cd php-7.1.11
. /configure \
--prefix= /usr/local/php7 \
-- exec -prefix= /usr/local/php7 \
--bindir= /usr/local/php7/bin \
--sbindir= /usr/local/php7/sbin \
--includedir= /usr/local/php7/include \
--libdir= /usr/local/php7/lib/php \
--mandir= /usr/local/php7/php/man \
--with-config- file -path= /usr/local/php7/etc \
--with-mysql-sock= /var/run/mysql/mysql .sock \
--with-mcrypt= /usr/include \
--with-mhash \ --with-openssl \ --with-mysqli=shared,mysqlnd \ --with-pdo-mysql=shared,mysqlnd \ --with-gd \ --with-iconv \ --with-zlib \ -- enable -zip \
--with-ldap=shared \ --with-ldap-sasl \ -- enable -inline-optimization \
--disable-debug \ --disable-rpath \ -- enable -shared \
-- enable -xml \
-- enable -bcmath \
-- enable -shmop \
-- enable -sysvsem \
-- enable -mbregex \
-- enable -mbstring \
-- enable - ftp \
-- enable -gd-native-ttf \
-- enable -pcntl \
-- enable -sockets \
--with-xmlrpc \ -- enable -soap \
--without-pear \ --with-gettext \ -- enable -session \
--with-curl \ --with-jpeg- dir \
--with-freetype- dir \
-- enable -opcache \
-- enable -fpm \
--with-fpm-user=nginx \ --with-fpm-group=nginx \ --without-gdbm \ --disable-fileinfo make && make install
make test ##不是必须
ll /usr/local/php7/lib/php/extensions/no-debug-non-zts-20160303/
直接使用编译后未经优化处理的配置 cp php.ini-production /usr/local/php7/etc/php .ini
cp sapi /fpm/init .d.php-fpm /etc/init .d /php-fpm
cp /usr/local/php7/etc/php-fpm .conf.default /usr/local/php7/etc/php-fpm .conf
cp /usr/local/php7/etc/php-fpm .d /www .conf.default /usr/local/php7/etc/php-fpm .d /www .conf
修改配置文件 vim /usr/local/php7/etc/php .ini
######避免PHP信息暴露在http头中 expose_php = Off ######避免暴露php调用mysql的错误信息 display_errors = Off ######在关闭display_errors后开启PHP错误日志(路径在php-fpm.conf中配置) log_errors = On ######设置PHP的扩展库路径 extension_dir = "/usr/local/php7/lib/php/extensions/no-debug-non-zts-20160303/"
######设置PHP的opcache和mysql动态库 zend_extension=opcache.so extension=mysqli.so extension=pdo_mysql.so extension=ldap.so ######设置PHP的时区 date .timezone = PRC
######开启opcache [opcache] opcache. enable =1
######设置PHP脚本允许访问的目录(需要根据实际情况配置) open_basedir = /etc/nginx/html ;
vim /usr/local/php7/etc/php-fpm .conf
######设置错误日志的路径 error_log = /var/log/php-fpm/error .log
######引入www.conf文件中的配置 include= /usr/local/php7/etc/php-fpm .d/*.conf
[root@zabbix ~] # cat /usr/local/php/etc/php-fpm.conf
[global] pid = /usr/local/php/var/run/php-fpm .pid
error_log = /usr/local/php/var/log/php-fpm .log
log_level = notice [www] listen = /tmp/php-cgi .sock
listen.backlog = -1 listen.allowed_clients = 127.0.0.1 listen.owner = www listen.group = www listen.mode = 0666 user = www group = www pm = dynamic pm.max_children = 80 pm.start_servers = 40 pm.min_spare_servers = 40 pm.max_spare_servers = 80 request_terminate_timeout = 100 request_slowlog_timeout = 0 slowlog = var /log/slow .log
vim /usr/local/php7/etc/php-fpm .d /www .conf
######设置用户和用户组 user = nginx group = nginx ######根据nginx.conf中的配置fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;设置PHP监听 ; listen = 127.0.0.1:9000 #####不建议使用(看自己设置情况)
listen = /var/run/php-fpm/php-fpm .sock
######开启慢日志 slowlog = /var/log/php-fpm/ $pool-slow.log
request_slowlog_timeout = 10s ######设置php的session目录(所属用户和用户组都是nginx) php_value[session.save_handler] = files php_value[session.save_path] = /var/lib/php/session
echo -e '\nexport PATH=/usr/local/php7/bin:/usr/local/php7/sbin:$PATH\n' >> /etc/profile && source /etc/profile
mkdir -p /var/log/php-fpm/ && mkdir -p /var/run/php-fpm && cd /var/run/ && chown -R nginx:nginx php-fpm
mkdir -p /var/lib/php/session
chown -R nginx:nginx /var/lib/php
chmod +x /etc/init .d /php-fpm
chkconfig --add php-fpm chkconfig php-fpm on php-fpm -t service php-fpm start ps -aux | grep php ##php-fpm进程数和进程用户nginx都是由www.conf中pm.start_servers和user的值分别决定的
root 26007 0.0 0.0 182016 6324 ? Ss 13:36 0:00 php-fpm: master process ( /usr/local/php7/etc/php-fpm .conf)
nginx 26008 0.0 0.0 182016 5884 ? S 13:36 0:00 php-fpm: pool www nginx 26009 0.0 0.0 182016 5884 ? S 13:36 0:00 php-fpm: pool www |
本文转自 295631788 51CTO博客,原文链接:http://blog.51cto.com/hequan/1982046,如需转载请自行联系原作者