先介紹一下我使用的環境,是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