12.23open_basedir

php-fpm定義open_basedir目錄概要 vim /usr/local/php-fpm/etc/php-fpm.d/test.conf//加入如下內(nèi)容

php_admin_value[open_basedir]=/data/wwwroot/aming.com:/tmp/ 創(chuàng)建測試php腳本,進行測試 再次更改aming.conf,修改路徑,再次測試 配置錯誤日志 再次測試 查看錯誤日志 php-fpm定義open_basedir open_basedir 的作用是限制php在指定的目錄里活動。 因為如果服務(wù)器管理多個網(wǎng)站,在php.ini里定義多個open_basedir就不合適了,所以要么在apache虛擬主機配置文件里面定義,要么在php-fpm配置文件里面定義,我們可以針對不同的池子(pool)定義對應(yīng)的open_basedir 只需要加 下面一行配置即可

創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站設(shè)計、網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)、梁子湖網(wǎng)絡(luò)推廣、小程序設(shè)計、梁子湖網(wǎng)絡(luò)營銷、梁子湖企業(yè)策劃、梁子湖品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們大的嘉獎;創(chuàng)新互聯(lián)公司為所有大學生創(chuàng)業(yè)者提供梁子湖建站搭建服務(wù),24小時服務(wù)熱線:18982081108,官方網(wǎng)址:muchs.cn

php_admin_value[open_basedir]=/data/wwwroot/test.com:/tmp/

- 如果路徑出錯,就會無法正常訪問,導致404頁面 curl直接連會提示“No input file specified.” 針對www的pool進行配置 在最后一行加入配置

[root@hf-01 php-fpm.d]# vim /usr/local/php-fpm/etc/php-fpm.d/www.conf [www] listen = /tmp/php-fcgi.sock listen.mode = 666 user = php-fpm group = php-fpm pm = dynamic pm.max_children = 50 pm.start_servers = 20 pm.min_spare_servers = 5 pm.max_spare_servers = 35 pm.max_requests = 500 rlimit_files = 1024 request_slowlog_timeout = 1 slowlog = /usr/local/php-fpm/var/log/www-slow.log php_admin_value[open_basedir]=/data/wwwroot/test.com:/tmp/ 重啟php-fpm

[root@hf-01 php-fpm.d]# /etc/init.d/php-fpm restart Gracefully shutting down php-fpm . done Starting php-fpm done [root@hf-01 php-fpm.d]# 訪問測試

[root@hf-01 php-fpm.d]# curl -x127.0.0.1:80 test.com/sleep.php -I HTTP/1.1 200 OK Server: nginx/1.12.1 Date: Tue, 09 Jan 2018 22:56:24 GMT Content-Type: text/html; charset=UTF-8 Connection: keep-alive X-Powered-By: PHP/5.6.30 [root@hf-01 php-fpm.d]# 若open_basedir定義錯誤,就會導致無法訪問,形成404狀態(tài)碼,輸出curl直接連會提示“No input file specified.” 定義錯誤日志

[root@hf-01 php-fpm.d]# vi /usr/local/php-fpm/etc/php.ini 搜索 /display_errors 將display_errors = Off 搜索 /error_log,添加error_log ;error_log = php_errors.log ; Log errors to syslog (Event Log on Windows). ;error_log = syslog error_log = /usr/local/php-fpm/var/log/php_errors.log //這一段定義錯誤日志 搜索error_reporting 注釋掉自帶的error_reporting ;error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT error_reporting = E_ALL //定義錯誤日志的級別,所有 保存退出 display_errors = Off 正常情況下,在線上這個是off的,別人不能通過瀏覽器看到你的錯誤信息,而是把你的錯誤信息記錄到服務(wù)器的某一個文件里 查看設(shè)置的錯誤日志文件,并是否生成

[root@hf-01 php-fpm.d]# grep error_log /usr/local/php-fpm/etc/php.ini ; server-specific log, STDERR, or a location specified by the error_log ; Set maximum length of log_errors. In error_log information about the source is ;error_log = php_errors.log ;error_log = syslog error_log = /usr/local/php-fpm/var/log/php_errors.log ; OPcache error_log file name. Empty string assumes "stderr". ;opcache.error_log= [root@hf-01 php-fpm.d]# [root@hf-01 php-fpm.d]# ls /usr/local/php-fpm/var/log/ php-fpm.log www-slow.log [root@hf-01 php-fpm.d]# 手動生成錯誤日志文件,并設(shè)置權(quán)限為777,防止不能夠正常寫入

[root@hf-01 php-fpm.d]# touch /usr/local/php-fpm/var/log/php_errors.log [root@hf-01 php-fpm.d]# chmod 777 /usr/local/php-fpm/var/log/php_errors.log [root@hf-01 php-fpm.d]# 這里為了方便測試,故意將/usr/local/php-fpm/etc/php-fpm.d/www.conf 中的open_basedir路徑寫錯,來方便測試 重啟php-fpm

[root@hf-01 php-fpm.d]# /etc/init.d/php-fpm restart Gracefully shutting down php-fpm . done Starting php-fpm done [root@hf-01 php-fpm.d]# 訪問測試,會看到顯示404

[root@hf-01 php-fpm.d]# curl -x127.0.0.1:80 test.com/sleep.php -I HTTP/1.1 404 Not Found Server: nginx/1.12.1 Date: Tue, 09 Jan 2018 23:35:31 GMT Content-Type: text/html; charset=UTF-8 Connection: keep-alive X-Powered-By: PHP/5.6.30 [root@hf-01 php-fpm.d]# 查看錯誤日志,會看到訪問地址有限制

[root@hf-01 php-fpm.d]# cat /usr/local/php-fpm/var/log/php_errors.log [09-Jan-2018 23:35:31 UTC] PHP Warning: Unknown: open_basedir restriction in effect. File(/data/wwwroot/test.com/sleep.php) is not within the allowed path(s): (/data/wwwroot/111test.com:/tmp/) in Unknown on line 0 [09-Jan-2018 23:35:31 UTC] PHP Warning: Unknown: failed to open stream: Operation not permitted in Unknown on line 0 [root@hf-01 php-fpm.d]# 再將配置文件的open_basedir路徑修改過來,重新加載php-fpm,再來訪問,會看到正常顯示

[root@hf-01 php-fpm.d]# vim /usr/local/php-fpm/etc/php-fpm.d/www.conf [root@hf-01 php-fpm.d]# /etc/init.d/php-fpm restart Gracefully shutting down php-fpm . done Starting php-fpm done [root@hf-01 php-fpm.d]# curl -x127.0.0.1:80 test.com/sleep.php -I HTTP/1.1 200 OK Server: nginx/1.12.1 Date: Tue, 09 Jan 2018 23:39:30 GMT Content-Type: text/html; charset=UTF-8 Connection: keep-alive X-Powered-By: PHP/5.6.30 [root@hf-01 php-fpm.d]#

當前標題:12.23open_basedir
URL標題:http://muchs.cn/article6/chegig.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、品牌網(wǎng)站建設(shè)、網(wǎng)站設(shè)計、App設(shè)計、軟件開發(fā)、網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司