去看了他們的各種配置,太多太多,以現在初級的運維水準不可能一一了解,所以打算問大家有哪些你們熟悉的特別需要了解知道的配置,怎麼配置能更好的維護項目、提高效能。
去看了他們的各種配置,太多太多,以現在初級的運維水準不可能一一了解,所以打算問大家有哪些你們熟悉的特別需要了解知道的配置,怎麼配置能更好的維護項目、提高效能。
好大的問題,說說我個人關注哪些點,歡迎其他夥伴一起補充完善肯定會漏
安全
nginx(user設定項目)、php-fpm(user,group設定項)等服務以及網站目錄的權限、使用者和使用者群組這個真的很重要
php安全方面也要注意系統層級的函數如果沒有項目需求全部停用(disable_functions)
php不要打開錯誤列印,很容易暴露訊息被攻擊
<code>display_startup_errors = Off ,display_errors = Off</code>
性能
nginx進程數worker_processes、最大連線數worker_connections
php-fpm效能相關:pm.max_children、pm.start_servers、pm.min_spare_servers、pm.max_spare_servers、pm.max_requests
日誌監控分析
nginx日誌:access_log配合log_format
php記錄日誌:log_errors
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>