首頁  >  文章  >  後端開發  >  中小型專案中nginx、php-fpm、php其中有哪些配置用的比較多且重要且需要關注? ? ?

中小型專案中nginx、php-fpm、php其中有哪些配置用的比較多且重要且需要關注? ? ?

WBOY
WBOY原創
2016-09-30 09:37:34888瀏覽

去看了他們的各種配置,太多太多,以現在初級的運維水準不可能一一了解,所以打算問大家有哪些你們熟悉的特別需要了解知道的配置,怎麼配置能更好的維護項目、提高效能。

回覆內容:

去看了他們的各種配置,太多太多,以現在初級的運維水準不可能一一了解,所以打算問大家有哪些你們熟悉的特別需要了解知道的配置,怎麼配置能更好的維護項目、提高效能。

好大的問題,說說我個人關注哪些點,歡迎其他夥伴一起補充完善肯定會漏

安全

  1. nginx(user設定項目)、php-fpm(user,group設定項)等服務以及網站目錄的權限、使用者和使用者群組這個真的很重要

  2. php安全方面也要注意系統層級的函數如果沒有項目需求全部停用(disable_functions)

  3. php不要打開錯誤列印,很容易暴露訊息被攻擊

<code>display_startup_errors = Off ,display_errors = Off</code>

性能

  1. nginx進程數worker_processes、最大連線數worker_connections

  2. php-fpm效能相關:pm.max_children、pm.start_servers、pm.min_spare_servers、pm.max_spare_servers、pm.max_requests

日誌監控分析

  1. nginx日誌:access_log配合log_format

  2. php記錄日誌:log_errors

  3. php-fpm記錄慢執行日誌:slowlog配合request_slowlog_timeout

我還會關注下系統層級:iptables、/etc/sysctl.conf等等

建議

最好自己在寫點腳本監控記憶體、流量、cpu、進程數、磁碟空間等等、也可以用監控產品、開源監控專案等等都可以,合理控制警報策略。

接著定期分析上面配置中所產出的日誌文件,把一些響應慢的日誌、錯誤的時間、執行慢的日誌都排查一下理解一下,解決一些日常的運行中性能問題

php的配置中基本上都是預設不需要改,主要的就是添加Xdebug時需要在php.ini增加配置,如

<code>[xdebug]
zend_extension="/Applications/MAMP/bin/php/php7.0.0/lib/php/extensions/no-debug-non-zts-20151012/xdebug.so"
xdebug.remote_enable = 1
xdebug.remote_connect_back = 1
xdebug.remote_port = 9000
xdebug.scream=0 
xdebug.cli_color=1
xdebug.show_local_vars=1</code>

Xdebug在Development環境是特別有用的,在Production環境時需要開啟OPcache,那就需要打開php.ini中OPcache配置如:

<code>[OPcache]
zend_extension="/Applications/MAMP/bin/php/php7.0.0/lib/php/extensions/no-debug-non-zts-20151012/opcache.so"
  opcache.memory_consumption=128
  opcache.interned_strings_buffer=8
  opcache.max_accelerated_files=4000
  opcache.revalidate_freq=60
  opcache.fast_shutdown=1
  opcache.enable_cli=1</code>

關於PHP日誌處理,建議使用monolog/monolog庫來處理日誌列印。
這裡推薦一個異常處理工具Sentry,和日誌處理工具Logentries。

php-fpm:

<code>pm 系列配置</code>
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn