Linux下安装php

来源:互联网 发布:保定云计算培训 编辑:程序博客网 时间:2024/05/17 04:58
一、安装
Linux下安装php需要先安装libxml2
 
Cd /usr/local
 
1
下载libxml2安装包
Wget  ftp://xmlsoft.org/libxml2/libxml2-2.9.4.tar.gz
 
下载php安装包
Wget  wget http://cn2.php.net/distributions/php-5.6.27.tar.gz
 
2
安装libxml2
Tar -zxvf libxml2-2.9.4.tar.gz解压libxml2安装包
 
Cd libxml2-2.9.4进入解压后的目录
./configure --prefix=/usr/local/libxml2 --with-python=no
Make
Make install
 
3
安装php
 
Tar -zxvf php-5.6.27.tar.gz解压php安装包
Cd php-5.6.27进入解压后的目录
./configure --prefix=/usr/local/php --with-libxml-dir=/usr/local/libxml2--with-config-file-path=/usr/local/php/etc--enable-mbstring--enable-fpm --with-mysqli makemake install


 
至此,php安装完毕,
Cd ../返回local目录,发现多了一个文件夹php就是我们的php安装目录
Cd php
Ll sbin
可以看到 sbin下有一个文件php-fpm ,便是php的启动文件
但是,还没结束,我们需要对nginx进行配置,让它支持php
 
 
二、配置
进入nginx安装目录的配置文件所在目录
Cd /usr/local/nginx/conf
Vi nginx.conf
php这段注释打开,并将/scripts改为usr/local/nginx/www
 
    
location ~ \.php$ {            root           html;            fastcgi_pass   127.0.0.1:9000;            fastcgi_index  index.php;            fastcgi_param  SCRIPT_FILENAME  /usr/local/www$fastcgi_script_name;            include        fastcgi_params;        }

保存退出
Cd  /usr/local/php/sbin
./php-fpm启动php
如果报错:
ERROR: failed to open configuration file '/usr/local/php/etc/php-fpm.conf': No such file or directory (2)
[22-Oct-2016 00:06:21] ERROR: failed to load configuration file '/usr/local/php/etc/php-fpm.conf'
[22-Oct-2016 00:06:21] ERROR: FPM initialization failed
表示没有php-fpm.conf文件
 
Cd /usr/local/php/etc/
Copy php-fpm.conf.default php-fpm.conf

进入源码
cd /usr/local/php-7.1.8
cp php.ini-development /usr/local/php/etc/php.ini

Cd ../php/sbin
./php-fpm启动php
 
进入nginx
Cd /usr/local/nginx/html
Vi phpinfo.php
内容如下:
<?php
 Phpinfo();
 
?>
保存退出
在浏览器打开这个文件,可以看到刚刚安装的php的信息。
 
如果访问html文件正常,但是访问php页面报 file not found,则是因为php-fpm没有读写文件的权限,可以先 干掉php-fpm进程,然后 编辑配置文件
cd /usr/local/php
Vi etc/php-fpm.conf

找到这一行,
user = nobody
group = nobody
改为:
user = root
group = root 
保存,重新启动php
./sbin/php-fpm
报错:
[08-Aug-2017 23:22:02] ERROR: [pool www] please specify user and group other than root
[08-Aug-2017 23:22:02] ERROR: FPM initialization failed
系统提示 不能以root权限启动php-fpm,
执行 ./sbin/php-fpm -h, 获取帮助
可以看到, 加-R, 可以以root来启动php-fpm
./sbin/php-fpm -R
启动成功,刷新网页,可以看到php输出信息了

 
 
三、注册为系统服务
 
先对php再进行配置
Cd /usr/local/php/etc/
Vi php-fpm.conf
pid这行的注释打开
pid = run/php-fpm.pid
 
error_log这行的注释打开
error_log = log/php-fpm.log
 
进入php源代码目录
Cd /usr/local/php-5.6.27/
find -name *init*  在当前目录下查找php的启动脚本文件
出现一行
./sapi/fpm/init.d.php-fpm
这便是我们要的文件
 
cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
 
chmod +x php-fpm  给予权限
chkconfig --add php-fpm  添加服务
 
此时php添加到系统服务中,需要启动/重启/关闭时,执行如下命令即可
Service php-fpm start | restart | stop