先介绍一下我使用的环境,是centOS7.4
之前的安装PHP我都是下载PHP安装包文件,解压编译安装,扩展也是编译安装,再把生成的.so文件保存在PHP的扩展文件夹下才能使用,这次我发现了一种能超级简便好用的安装方式。
大家都知道使用yum install命令安装,如果直接yum install php,安装的PHP版本是5.6,要安装高版本的PHP,其实也可以用yum install命令直接安装呢,亲测可用。
1,安装之前先卸载虚拟机上其他版本的PHP
yum -y remove php*
2,由于linux的yum源不存在PHP7.x,所有我们要改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
3,安装PHP及其扩展,比如安装php7.2
yum -y install php72w php72w-cli php72w-common php72w-devel php72w-embedded php72w-fpm php72w-gd php72w-mbstring php72w-mysqlnd php72w-opcache php72w-pdo php72w-xml
安装完成后,php -v查看安装的PHP版本,看到下图这样有版本号,说明PHP安装成功:
4,安装成功之后,开启PHP服务:
systemctl enable php-fpm.service
systemctl start php-fpm.service
5,开启服务后,试着运行一下PHP代码,输出一行当前时间戳:
php -r "echo time();"
6,运行php -m看当前PHP安装的扩展有哪些,如果有需要的扩展没安装,比如要安装redis扩展,可以先用search命令查看此版本的PHP所有扩展服务名:
yum search all php72w
上图红框内是redis扩展的名称,接下来使用yum安装:yum install后面加上扩展名称。
yum install php72w-pecl-redis.x86_64
安装完毕后,再php -m查看当前已安装的扩展:
redis扩展已经安装成功,其他的扩展都是这样;相比较编译安装这种安装方式简直太舒服。
最后,我使用的服务器是nginx,打开nginx的配置文件:
vim /etc/nginx/nginx.conf
在server中,加入解析PHP文件的内容:
location ~\.php$ {
try_files $uri =404;
include fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_intercept_errors on;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
之后重启nginx服务,可以用浏览器访问服务器上的php文件了。
最后,为了方便之后调试,把php配置文件中的display_error打开:先找到配置文件,再编辑配置文件;
find / -name php.ini
vim /etc/php.ini
修改其中两行代码,把Off状态改为On
display_errors = On
display_startup_errors = On