濮阳杆衣贸易有限公司

主頁 > 知識庫 > CentOS 7上為PHP5安裝suPHP的方法(彭哥)

CentOS 7上為PHP5安裝suPHP的方法(彭哥)

熱門標簽:淘寶辦理400電話是多少 菏澤自動電銷機器人公司 艾澤拉斯地圖標注 外呼線路隨意切換嗎 網絡電話外呼系統(tǒng)開發(fā) 滴滴急救中心地圖標注 申請400電話收費標 北海智能電銷機器人公司 福州語音電銷機器人招商

CentOS 7上PHP默認是以apache或者nobody的身份運行的,這種方式下由于PHP運行需要的權限比較大,會有安全隱患,還可能會受到服務器其他用戶影響。

通過phpinfo查看PHP信息如下:

apache運行php

可以看出來,PHP目前是作為Apache的一部分在運行,而不會為每個腳本運行一個獨立進程。如果希望PHP腳本運行時是以當前用戶的身份而不是Apache,可以通過部署suPHP來實現。接下來介紹如何在CentOS 7上安裝suPHP。

先配置安裝suphp所需的環(huán)境:

yum -y groupinstall 'Development Tools'
yum -y install apr-devel
yum -y install httpd-devel

下載suphp安裝包:

mkdir temp
cd temp
wget http://suphp.org/download/suphp-0.7.2.tar.gz
tar zxvf suphp-0.7.2.tar.gz

下載并安裝suphp補?。?/p>

wget -O patchingsuphp.patch https://www.webhostinghero.com/downloads/php/suphp.patch
patch -Np1 -d suphp-0.7.2 < patchingsuphp.patch
cd suphp-0.7.2
autoreconf -if

運行./configure:

./configure --prefix=/usr/ --sysconfdir=/etc/ --with-apr=/usr

/bin/apr-1-config --with-apache-user=apache --with-setid-mode=owner

--with-logfile=/var/log/httpd/suphp_log

編譯并安裝:

make
make install

在Apache配置目錄下創(chuàng)建suphp.conf

vi /etc/httpd/conf.d/suphp.conf

并寫入:

LoadModule suphp_module modules/mod_suphp.so

/etc目錄下創(chuàng)建suphp.conf配置文件:

vi /etc/suphp.conf

并寫入配置文件內容如下:

[global]
;Path to logfile
logfile=/var/log/httpd/suphp.log
;Loglevel
loglevel=info
;User Apache is running as
webserver_user=apache
;Path all scripts have to be in
docroot=/
;Path to chroot() to before executing script
;chroot=/mychroot
; Security options
allow_file_group_writeable=true
allow_file_others_writeable=false
allow_directory_group_writeable=true
allow_directory_others_writeable=false
;Check wheter script is within DOCUMENT_ROOT
check_vhost_docroot=true
;Send minor error messages to browser
errors_to_browser=false
;PATH environment variable
env_path=/bin:/usr/bin
;Umask to set, specify in octal notation
umask=0077
; Minimum UID
min_uid=100
; Minimum GID
min_gid=100

[handlers]
;Handler for php-scripts
x-httpd-suphp="php:/usr/bin/php-cgi"
;Handler for CGI-scripts
x-suphp-cgi="execute:!self"

如果希望domainname這個目錄以用戶user身份運行,那么修改目錄所有者屬性為user,如下:

chown -R [user].[user] /var/www/html/[domainname]

最后在Apache配置文件中找到相應域名,并開啟suphp:

<FilesMatch ".+\.ph(p[345]?|t|tml)$">
SetHandler None
</FilesMatch>
<IfModule mod_suphp.c>
suPHP_Engine on
<FilesMatch "\.php[345]?$">
SetHandler x-httpd-suphp
</FilesMatch>
suPHP_AddHandler x-httpd-suphp
</IfModule>

最后重啟Apache文件。通過info.php測試可以發(fā)現運行該域名的Server API已經由Apache變成CGI/FastCGI了,如下圖所示:

到這里我們即完成了CentOS為某個域名訪問設置通過suphp的方式來運行,而不用默認的Apache Handler運行。其他域名需要設置,按照以上步驟操作一遍即可。

標簽:滄州 亳州 資陽 丹東 三沙 混顯 延安 賀州

巨人網絡通訊聲明:本文標題《CentOS 7上為PHP5安裝suPHP的方法(彭哥)》,本文關鍵詞  CentOS,上為,PHP5,安裝,suPHP,;如發(fā)現本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《CentOS 7上為PHP5安裝suPHP的方法(彭哥)》相關的同類信息!
  • 本頁收集關于CentOS 7上為PHP5安裝suPHP的方法(彭哥)的相關信息資訊供網民參考!
  • 推薦文章
    海口市| 阜平县| 涿鹿县| 眉山市| 云南省| 蓬安县| 卫辉市| 铜陵市| 土默特左旗| 密云县| 景宁| 盘锦市| 镇远县| 溧水县| 资溪县| 清水县| 山阴县| 衡阳县| 六盘水市| 曲麻莱县| 五寨县| 南雄市| 荔浦县| 平利县| 屏东县| 都安| 腾冲县| 白水县| 昭平县| 泾源县| 新蔡县| 盐城市| 读书| 岗巴县| 丰城市| 滦南县| 神木县| 汪清县| 阿巴嘎旗| 博客| 武宣县|