中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

LAMP架構搭建與優化(2.8-2.9)

發布時間:2020-10-22 04:06:38 來源:網絡 閱讀:439 作者:Linux小璇 欄目:web開發

2.8 php.ini配置文件詳解

/usr/local/php/bin/php  -i |head可以查看到調用的php.ini配置文件在哪里,它是以分號為注釋符號,常用的配置有

vim  /usr/local/php/etc/php.ini

1.disable_functions=eval,assert,popen,passthru,escapshllarg,escapeshellcmd,passthru,exec,systern,chroot,scandir,chgrp,chown,escapeshellcmd,escapshllarg,shell_exec,proc_get_status,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,leak,popepassthru,stream_socket_server,popen,pro_close這些函數有什么用,可以到php官方文檔上查找。(為了安全,禁止一些高風險的函數)

2.錯誤日志display_errors=On 會在瀏覽器頁面提示一些錯誤,默認是off

去編輯一下vim  /data/www/forum.php 特意去增加幾行,在到瀏覽器訪問www.test.com/forum.php就會看到提示的錯誤,可以根據提示看到配置文件哪里有問題;如果是off的話,再到瀏覽器訪問就是空白頁面,就不知道哪里有錯誤時,可以按F12查看到狀態碼,或者curl  -x127.0.0.1:80  www.test.com/forum.php  -I,500一般是php.ini腳本有問題;如果是On,別人會看到這些錯誤信息,對別人不友好,所以打開php的錯誤日志log_errors=On,再去定義錯誤日志的路徑error_log=/usr/local/php/logs/php_errors.log,如果沒有這個路徑/usr/local/php/logs,就去mkdir /usr/local/php/logs/,并且更改權限chmod  777  /usr/local/php/logs/,再去配置日志的格式、日志的級別error_reporting=E_ALL & ~E_NOTICE,&表示并且,~表示取反,重啟Apache,在到瀏覽器訪問www.test.com/forum.php是空白頁面,不過會在 /usr/local/php/logs/產生一個php_errors.log文件,可以cat php_errors.log里面的文件,可以看到發生的錯誤,這樣就不會在瀏覽器上暴露信息。

3.open_basedir=/data/www:/tmp 也是一個安全選項,如它只能訪問/data/www目錄,其它目錄是訪問不了的,就把它限定死,可以是多個,所以說open_basedir一定要定義好在你的網站程序所在的目錄,這樣訪問www.test.com/forum.php才能正常。


同上也可以去配置Apache     vim  /usr/local/apache2/conf/extra/httpd-vhosts.conf

如果有多個站點就要去配置Apache,因為php.ini只能寫寫一句,而Apache能配置多個open_basedir,每一個虛擬主機一個open_basedir。

加一句php_admin_value open_basedir "/data/www/:/tmp/",這樣就不需要php.ini里面的open_basedir了,就把它注釋掉,它的好處在于區分不同的虛擬主機

LAMP架構搭建與優化(2.8-2.9)




2.9 php擴展模塊如何安裝

/usr/local/php/bin/php -m (查看所加載的模塊,有動態也有靜態),假如你安裝完php,你想要的模塊沒有加載進來,解決辦法:第一種方法是重新編譯,第二種方法是用動態方式加載進來

嘗試動態共享的模塊cd  /usr/local/src/php-5.6.18/ext/,很多模塊的源碼在這個目錄下,假如沒有curl模塊,cd curl,用這個命令/usr/local/php/bin/phpize,它的目的是為了生成configure可執行文件,ls 你會看到curl目錄下多出很多文件,就去編譯configure,./configure  --with-php-config=/usr/local/php/bin/php-config這是固定的語法,如果有錯誤一般是少了什么庫,make,make install會有這樣一個文件  Installing  shared  extensions:    /usr/local/php/lib/extensions/no-debug-non-zts-2016-2-21/,ls  /usr/local/php/lib/extensions/no-debug-non-zts-2016-2-21/下面會有一個curl.so文件。


/usr/local/php/bin/php -i|grep  extension_dir查extension_dir在哪,extension是存放這些擴展模塊的,extension_dir可以在/usr/local/php/etc/php.ini里面定義,vim /usr/local/php/etc/php.ini找到extension,然后在最后加上extension=curl.so,如果寫故意寫錯是加載不進來的,就可以去看它的錯誤日志tail   /usr/local/php/logs/php_errors.log

grep  '^extension='   /usr/local/php/etc/php.ini可以看到哪些是動態加載的,剩下的就是靜態


取消高亮:nohl

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

云梦县| 伊通| 杂多县| 社旗县| 社会| 贵德县| 潢川县| 盐山县| 福海县| 莱西市| 民和| 藁城市| 贵州省| 石首市| 丰台区| 耒阳市| 札达县| 乌拉特后旗| 布拖县| 五寨县| 文登市| 临桂县| 大邑县| 江津市| 怀化市| 平湖市| 东阳市| 金华市| 辽中县| 自治县| 永登县| 华坪县| 铜陵市| 大英县| 惠水县| 梨树县| 梓潼县| 崇仁县| 兴文县| 巴彦淖尔市| 芦山县|