1
2
3
4
5
6
7
8
9
10
11
|
下面的是参考https: //typecodes .com/ 过了一遍,和前面的nginx 连接 测试没有问题。
与mysql连接的时候,注意参数 --with-mysql-sock= /var/run/mysql/mysql .sock,需要和mysql里面设置的是一样。
yum -y install libxml2 libxml2-devel openssl openssl-devel curl-devel libjpeg-devel libpng-devel freetype-devel libmcrypt-devel
groupadd -r php && useradd -r -g php -s /bin/false -d /usr/local/php7 -M php
cd /usr/local/src
wget http: //au1 .php.net /distributions/php-7 .1.1. tar .gz
|
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
|
tar zxvf php-7.1.1. tar .gz
cd php-7.1.1
. /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-mysql=shared,mysqlnd \ --with-mysqli=shared,mysqlnd \ --with-pdo-mysql=shared,mysqlnd \ --with-gd \ --with-iconv \ --with-zlib \ -- enable -zip \
-- 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 \
-- enable -fastcgi \
--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/
|
1
2
3
4
5
6
7
|
直接使用编译后未经优化处理的配置 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
|
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
|
修改配置文件 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 ######设置PHP的时区 date .timezone = PRC
######开启opcache [opcache] opcache. enable =1
######设置PHP脚本允许访问的目录(需要根据实际情况配置) open_basedir = /etc/nginx/html ;
|
1
2
3
4
5
6
|
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
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
vim /usr/local/php7/etc/php-fpm .d/
######设置用户和用户组 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
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
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 |
1
2
3
4
|
测试 <?php phpinfo(); ?> |
本文转自 295631788 51CTO博客,原文链接:http://blog.51cto.com/hequan/1896152,如需转载请自行联系原作者