centos8平台上php7 4的生產環境配置

2022-06-28 21:33:12 字數 2965 閱讀 1617

1,建立php的日誌儲存目錄:

[root@yjweb ~]# mkdir -p /data/logs/phplogs

[root@yjweb ~]# chmod

777 /data/logs/phplogs

[root@yjweb ~]# vi /usr/local/soft/php7/etc/php.ini

配置內容為: 

1,確認log_errors的值是on,

其預設值是on,一般不需要修改

log_errors = on

2,確保display_errors的值是off,

其預設值是off,一般不需要修改

display_errors = off

3,重點:指定error_log的值,

error_log = /data/logs/phplogs/php7_errors.log

說明:預設的錯誤日誌寫到這裡

對應的原始碼可以訪問這裡獲取: 

需要手動指定的環節:

1,時區:

date.timezone = asia/shanghai

2,單次post的最大資料量:

post_max_size = 128m

3,檔案上傳時檔案大小限制:

upload_max_filesize = 64m

4,指令碼可使用的最大記憶體大小

memory_limit = 128m

5,每個指令碼用來解析請求資料的最長的時間

預設60s

max_input_time = 60

6,session的生命週期,設定為1個小時

session.gc_maxlifetime = 3600

[root@yjweb ~]# groupadd nginx

[root@yjweb ~]# useradd nginx -g nginx -s /sbin/nologin -m

[root@yjweb ~]# grep nginx /etc/passwd

nginx:x:

1001:1001::/home/nginx:/sbin/nologin

說明:php-fpm的預設執行使用者是nobody,

它是乙個linux系統的內建使用者,

如果有需要統一uid的地方則不方便去修改它,

所以我們自建乙個nginx賬戶,用來執行nginx和php-fpm

1,配置php-fpm.conf

[root@yjweb ~]# vi /usr/local/soft/php7/etc/php-fpm.conf

配置內容為:

指定php-fpm的錯誤日誌

error_log = /data/logs/phplogs/php-fpm_error.log

[root@yjweb ~]# vi /usr/local/soft/php7/etc/php-fpm.d/www.conf

配置內容為: 

1,配置使用者和組,使用自己建立的nginx使用者

user =nginx

group = nginx

2,配置pm

pm.max_children = 128

pm.start_servers = 10

pm.min_spare_servers = 5

pm.max_spare_servers = 35

說明:依次為:最大子程序數量

最小子程序數量:即:啟動時的數量

最小閒置子程序數量

最大閒置子程序數量:閒置的子程序數量超出此數字的會被殺掉

3,配置慢查詢

slowlog = /data/logs/phplogs/php-fpm_slow.log

request_slowlog_timeout = 2s

說明:配置2s超時

[webop@yjweb ~]$ cat /etc/redhat-release

centos linux release

8.0.1905 (core)

[root@yjweb etc]# /usr/local/soft/php7/bin/php -v

php

7.4.2 (cli) (built: mar 5

2020

11:16:38

) ( nts )

zend engine v3.

1,新增service檔案

[root@localhost daemon]# vi /usr/lib/systemd/system/php-fpm.service

[root@localhost daemon]# systemctl daemon-reload

[root@localhost daemon]# systemctl start php-fpm

[root@localhost daemon]# systemctl stop php-fpm

2,service檔案的內容:

[unit]

description=php-fpm

after=network.target

[service]

type=forking

execstart=/usr/local/soft/php7/daemon/php-fpm start

execstop=/usr/local/soft/php7/daemon/php-fpm stop

privatetmp=true

[install]

wantedby=multi-user.target

centos8平台使用lsof

lsof,list open files 列出當前系統開啟檔案的工具。在linux環境下,任何事物都以檔案的形式存在,所以lsof通過檔案不僅僅可以訪問常規資料,還可以訪問網路連線和硬體 對應的原始碼可以訪問這裡獲取 1,檢視lsof所屬的包 root blog whereis lsof lsof ...

centos8平台使用ulimit做系統資源限制

1,ulimit 用於shell啟動程序所占用的資源,可用於修改系統資源限制 2,使用ulimit a 可以檢視當前系統的所有限制值 使用ulimit n 可以同時開啟的檔案數 設定使用者可以同時開啟的最大檔案數 max open files 新裝的linux預設只有1024,當作為併發訪問量大的伺...

centos8平台給sudo配置日誌

我們可以記錄下來使用者賬號在哪個時間進行過sudo 這樣不需要再從secure日誌中查詢使用者的sudo記錄 對應的原始碼可以訪問這裡獲取 root blog touch var log sudo.log root blog sudoers.d visudo 增加三行配置 defaults logf...