PHP引擎php.ini引數最佳化
引數以外常見的PHP最佳化方法手段
1)php引擎快取加速最佳化
1 2 |
|
2) 使用tmpfs作為快取加速快取的檔案目錄
tmpfs,基於記憶體的檔案系統,加快轉存暫存檔案的速度
1 2 |
|
3) 防止PHP程式上傳檔案到圖片附件目錄
1 | #Nginx防禦 |
php.ini引數調優
php.ini配置檔案
1 23 |
|
1) 開啟php的安全模式
php安全模式是個非常重要的php內嵌的安全機制,能夠控制一些php的函式執行,比如system()呼叫系統命令函式
1 | safe_mode = on |
2)使用者組安全
1 |
safe_mode_gid = off #防止php程式對指令碼執行有許可權
|
3)關閉危險函式
如果開啟了安全模式,那麼函式禁止是可以不需要的,但是我們為了安全還是可以關閉的,特別是phpinfo()
1 |
disable_functions = system,passthru, exec ,shell_exec,popen,phpinfo
|
如果要禁止任何檔案和目錄的操作,那麼可以關閉很多檔案操作
1 |
disable_functions = chdir,chroot, dir ,getcwd,opendir,readdir,scandie,fopen,unlink,delete,copy, mkdir , rmdir ,rename, file ,file_getcontents,fputs,fwrite, chgrp , chmod , chown
|
4)關閉PHP版本資訊在http頭中的洩漏
1 | expose_php = off |
5)關閉註冊全域性變數
在PHP中提交的變數,包括使用POST或者GET提交的變數,都將自動註冊為全域性變數,能夠直接訪問,這是對服務非常不安全的
1 2 |
|
6)開啟magic_quotes_gpc來防止SQL隱碼攻擊
SQL隱碼攻擊是非常危險的問題,輕則網站後臺被入侵,重則整個伺服器淪陷
1 | magic_quotes_gpc = off |
這個預設是關閉的,如果它開啟將自動把使用者提交對sql的查詢進行轉換,比如把 ' 轉換為 ' 這對防止sql注入有重大作用,所以推薦設定為
1 | magic_quotes_gpc = on |
SQL隱碼攻擊防範:
Apache 中的mod_security和mod_evasive
Nginx lua waf
7)錯誤資訊控制
一般php在沒有連線到資料庫或者其他情況下會提示錯誤,一般資訊都會包含php指令碼當前的路徑資訊或者查詢的SQL語句資訊,這類資訊提供給駭客後市不安全的,建議關閉錯誤提示
1 |
display_errors = off #正式環境不要給使用者報錯
|
8)錯誤日誌
1 2 |
|
部分資源限制引數最佳化
1)設定每個指令碼執行的最長時間
但無法上傳較大的檔案或者後臺備份資料經常超時時,此時需要調整如下設定
1 2 3 |
|
2)每個指令碼使用的最大記憶體
1 | memory_limit = 128m |
3)每個指令碼等待輸入資料最長時間
1 |
max_input_time = 60; #(-1表示不限制)
|
4)上傳檔案的最大許可
1 | upload_mx_filesize = 2M; |
部分安全引數最佳化
1)禁止開啟遠端地址
記得最近出的php include的那個安全漏洞吧!就是在一個php程式中的include了變數,那麼入侵者就可以利用這個控制伺服器在本地執行遠端的一個php程式,例如phpshell
1 | allow_url_fopen = off |
2)設定防止Nginx檔案解析錯誤漏洞
1 | cgi.fix_path = 0 |
3)調整php sesson會話共享資訊存放位置
1 2 3 |
|
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4479/viewspace-2809081/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- php.ini中的upload_tmp_dir 引數PHP
- php.ini (轉)PHP
- php.ini安全配置PHP
- php.ini找不到PHP
- PHP 效能優化 - php.ini 配置PHP優化
- PHP中php.ini配置詳解PHP
- godaddy 修改php.iniGoPHP
- PHP.ini效能優化PHP優化
- PHP配置檔案詳解php.iniPHP
- php.ini 檔案在哪裡?PHP
- Linux找不到php.iniLinuxPHP
- ubuntn 重啟 PHP-fpm 修改 php.iniPHP
- postgresql配置引數最佳化SQL
- php編譯引數PHP編譯
- php curl引數大全PHP
- 虛擬主機php.ini在哪PHP
- 中文註釋的php.ini(轉)PHP
- php.ini修改php上傳檔案大小限制PHP
- php5.5.12伺服器php.ini配置PHP伺服器
- php修改php.ini配置檔案中disable_functionsPHPFunction
- 配置php.ini實現PHP檔案上傳功能PHP
- 超引數最佳化完整指南
- php.ini 檔案存放位置不對?PHP
- php.ini 核心配置選項說明PHP
- php.ini中開啟短標籤PHP
- php.ini安全配置詳細解釋PHP
- 適用PHP5.2的php.ini中文註釋版PHP
- 關於PHP.ini檔案的設定PHP
- linux核心引數最佳化(七)Linux
- Mysql 效能最佳化--基礎引數MySql
- linux核心引數最佳化1Linux
- DB2 效能最佳化引數DB2
- PHP7中php.ini、php-fpm和www.conf 配置PHP
- 【PHP】修改PHP配置檔案php.ini 上傳檔案的大小限制PHP
- PHP 編譯引數儲存PHP編譯
- 淺談PHP-FPM引數PHP
- PHP編譯安裝引數PHP編譯
- Kafka - 配置檔案引數最佳化方案Kafka