centos7下php的解除安裝與安裝nginx
centos上php完全解除安裝,想把php解除安裝乾淨,直接用yum的remove命令是不行的,需要檢視有多少rpm包,然後按照依賴順序逐一解除安裝。
1.首先檢視機器上安裝的所有php相關的rpm包
[root@localhost nginx]# rpm -qa | grep php
php-cli-5.3.3-22.el6.x86_64
php-pdo-5.3.3-22.el6.x86_64
php-gd-5.3.3-22.el6.x86_64
php-fpm-5.3.3-22.el6.x86_64
php-common-5.3.3-22.el6.x86_64
php-5.3.3-22.el6.x86_64
php-xml-5.3.3-22.el6.x86_64
php-pear-1.9.4-4.el6.noarch
2.按依賴順序進行刪除
rpm -e php-fpm-5.3.3-22.el6.x86_64
rpm-e php-pdo-5.3.3-22.el6.x86_64
rpm -e php-pear-1.9.4-4.el6.noarch
rpm-e php-cli-5.3.3-22.el6.x86_64
rpm -e php-5.3.3-22.el6.x86_64
rpm-e php-xml-5.3.3-22.el6.x86_64
rpm -e php-gd-5.3.3-22.el6.x86_64
rpm-e php-common-5.3.3-22.el6.x86_64
*************************=
centos7安裝nginx和php
nginx安裝,參考**:
rpm -uvh
yum install nginx
安裝php和php-fpm
yum install --enablerepo=remi --enablerepo=remi-php56 php php-fpm
因為我的php安裝的是5.6的,所以的指定這個源裡面安裝php-fpm,不然一直報錯
修改php配置檔案
vi /etc/php.ini
修改成0(這個配置值說是不安全的設定,參考**:
cgi.fix_pathinfo=0
修改配置檔案
vim /etc/nginx/conf.d/default.conf
server
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#error_page 500 502 503 504 /50x.html;
location = /50x.html
# proxy the php scripts to apache listening on 127.0.0.1:80
##location ~ \.php$
# pass the php scripts to fastcgi server listening on 127.0.0.1:9000
#location ~ \.php$
# deny access to .htaccess files, if apache's document root
# concurs with nginx's one
##location ~ /\.ht
}修改上面配置檔案的時候,執行php檔案的時候,老是顯示沒有找到,後來在這裡找到了答案,參考**
server
location /images
location ~ \.php$
}這個配置中有很多不合理的地方,其中乙個明顯的問題就是root指令被放到了location / 塊。如果root指令被定義在location塊中那麼該root指令只能對其所在的location生效。其它locaiont中沒有root指令,像location /images塊不會匹配任何請求,需要在每個請求中重複配置root指令來解決這個問題。因此我們需要把root指令放在server塊,這樣各個location就會繼承父server塊定義的$document_root,如果某個location需要定義乙個不同的$document_root,則可以在location單獨定義乙個root指令。
另乙個問題就是fastcgi引數script_filename 是寫死的。如果修改了root指令的值或者移動檔案到別的目錄,php-fpm會返回「no input file specified」錯誤,因為script_filename在配置中是寫死的並沒有隨著$doucument_root變化而變化,我們可以修改script_filename配置如下:
fastcgi_param script_filename $document_root$fastcgi_script_name;
所以我們不能忘記在server塊中配置root指令,不然$document_root的值為空,只會傳$fastcgi_script_name到php-fpm,這樣就會導致「no input file specified」錯誤。
最後在測試php檔案裡面輸出phpinfo的時候,出現了乙個未定義時區的錯誤,修改了配置檔案還是報錯,最後重啟了下php-fpm就好了
Centos7下yum與python解除安裝及重灌總結
不論幹什麼,解除安裝我發現都是最快的,因為不需要動腦,無腦刪就行了,不然rm rf 這個老梗怎麼會存在這麼久呢?然後我寫本篇的原因是我阿里雲的伺服器重新更換了乙個映象,裡面的東西都要自己下,然後當我把我自己的專案傳上去後發現一直給我提示編碼錯誤,我就尋思這環境肯定不對,因為之前都不會。所以把電腦裡的...
CentOS7下docker的安裝與解除安裝
yum remove docker docker client docker client latest docker common docker latest docker latest logrotate docker logrotate docker engine 檢視gcc版本 gcc v ...
centos 7 解除安裝mysql
解除安裝maridb root host 131 rpm qa grep mariadb mariadb libs 5.5.52 1.el7.x86 64 root host 131 yum y remove mari root host 131 rm rf var lib mysql root h...