您好,登錄后才能下訂單哦!
這篇文章主要介紹swoole phpinfo()不顯示的解決方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
一、問題描述
編寫了一個php文件test.php,代碼如下:
<?php echo phpinfo(); ?>
瀏覽器訪問了一下,卻返回了 NULL。
二、問題定位及解決
網上查了下,大部分人遇到的問題其實是 short_open_tags 的問題,他們的代碼如下:
<? echo phpinfo(); ?>
這種情況是需要把 php.ini 中的 short_open_tags 打開,然后重新加載 php.ini 服務就OK了。
這里又有兩個問題,一是怎么知道php執行加載的是哪個 php.ini 文件呢,可以在命令行下執行: php --ini 來找到php.ini 文件;二是如何重新加載 php.ini 文件,如何你的服務器上面啟用了php-fpm,一般來說重啟 php-fpm 就OK了,命令為: service php-fmp restart ,如果沒有啟用 php-fpm 服務(較早版本的php),一般重啟 apache服務就OK,命令為 service httpd restart 。
按照上面的步驟操作完成以后,大部分人遇到的問題就解決了,但是這個是別人的問題,跟我的并不是一個問題 orz...
無奈,感覺這個東西肯定是跟php的配置有關系,于是去官網看了下php.ini 的文檔,里面以后一項配置如下:
disable_functions string
本指令允許你基于安全原因禁止某些函數。接受逗號分隔的函數名列表作為參數。 disable_functions 不受安全模式的影響。 本指令只能設置在 php.ini 中。例如不能將其設置在 httpd.conf
意思就是php.ini里面可以配置一些方法,這些方法不能被調用,打開php.ini找到這個配置,果然phpinfo()這個方法被禁用了,如下:
disable_functions = phpinfo,system,proc_open,proc_close,show_source,popen,pclose
到這里豁然開朗,臨時把 phpinfo() 這個方法從disable_functions 中刪除掉,重新加載 php.ini 文件,然后再次從瀏覽器訪問 test.php, 這次成功了,問題解決。不過這里要提醒小伙伴們 phpinfo() 是很敏感的信息,平時最好還是不要暴露給客戶端,因此測試完我就趕緊給關掉了。
以上是“swoole phpinfo()不顯示的解決方法”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。