2023年7月3日发(作者:)
第六部分:配置php
1:修改文件
# vi /usr/local/server/php/etc/
查找
; extension_dir = "./"
修改为
extension_dir = "/usr/local/server/php/lib/php/extensions/no-debug-non-zts-20100525/"
并在此行后增加以下几行,然后保存:
extension = ""
extension = "pdo_"
extension = ""
查找
; output_buffering
; Default Value: Off
修改为
output_buffering
Default Value: on
查找
;_pathinfo=1
修改为
_pathinfo=1,防止Nginx文件类型错误解析漏洞。
2:配置eAccelerator加速PHP:
# mkdir -p /tmp/eaccelerator_cache
# vi /usr/local/server/php/etc/
按shift+g键跳到配置文件的最末尾,加上以下配置信息:
[eaccelerator]
zend_extension="/usr/local/server/php/lib/php/extensions/no-debug-non-zts-20100525/"
_size="64"
_dir="/tmp/eaccelerator_cache"
="1"
zer="1"
_mtime="1"
="0"
=""
_max="0"
_ttl="3600"
_prune_period="3600" _only="0"
ss="1"
ss_level="9"
3:创建php-fpm配置文件(php-fpm是为PHP打的一个FastCGI管理补丁,可以平滑变更配置而无需重启php-cgi):
# rm -f /usr/local/server/php/etc/
# vi /usr/local/server/php/etc/
复制以下代码
[global]
pid = run/
error_log = log/
log_level = notice
emergency_restart_threshold = 10
emergency_restart_interval = 1m
process_control_timeout = 5s
daemonize = yes
[www]
listen = 127.0.0.1:9000
g = -1
d_clients = 127.0.0.1
= nobody
= nobody
= 0666
user = www
group = www
pm = static
_children = 128
_servers = 20
_spare_servers = 5
_spare_servers = 35
request_terminate_timeout = 0
request_slowlog_timeout = 0
slowlog = log/$
rlimit_files = 65535
rlimit_core = 0
chroot =
chdir =
catch_workers_output = yes
php_admin_value[sendmail_path] = /usr/sbin/sendmail -t -i -f 77121151@
php_flag[display_errors] = off
---------------------------------------------------------华丽分割线--------------------------------------------------------- 第七部分:优化Linux内核参数
# vi /etc/
在末尾增加以下内容
# Add
_max_syn_backlog = 65536
_max_backlog = 32768
onn = 32768
_default = 8388608
_default = 8388608
_max = 16777216
_max = 16777216
_timestamps = 0
_synack_retries = 2
_syn_retries = 2
_tw_recycle = 1
#_tw_len = 1
_tw_reuse = 1
_mem = 94500000 915000000 927000000
_max_orphans = 3276800
#_fin_timeout = 30
#_keepalive_time = 120
_local_port_range = 1024 65535
= 128000000 syscatl -p
特别注释( = 128000000 syscatl -p )
中设置的eAccelerator,_size="64",解释:eaccelerator可使用的共享内存大小(单位为MB),即64M
在Linux下,单个进程的最大内存使用量受/proc/sys/kernel/shmmax中设置的数字限制(单位为字节) /proc/sys/kernel/shmmax = 33554432 (32M)
临时更改该值:
# echo 128000000 > /proc/sys/kernel/shmmax
或者
# vi /etc/
# = 128000000 syscatl -p
使配置立即生效:
# /sbin/sysctl -p
---------------------------------------------------------华丽分割线---------------------------------------------------------
第八部分:将php-fpm 作为服务运行
# cp /soft/php-5.4.8/sapi/fpm/-fpm /etc/init.d/php-fpm
# chmod 755 /etc/init.d/php-fpm
# chkconfig --add php-fpm
# chkconfig --level 345 php-fpm on
服务方式启动php-fpm
# service php-fpm start
第九部分:修改nginx,支持php
# vi /usr/local/server/nginx/conf/
找到并修改以下代码
location ~ .php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index ;
fastcgi_param SCRIPT_FILENAME /web/www$fastcgi_script_name;
include fastcgi_params;
}
提供一份完整的配置文件(仅供参考)
user www www;
worker_processes 8;
error_log /web/logs/nginx_ crit;
pid logs/;
google_perftools_profiles /tmp/tcmalloc/;
events {
use epoll;
worker_connections 65535;
}
http {
include ;
default_type application/octet-stream;
server_names_hash_bucket_size 128;
client_header_buffer_size 32k;
large_client_header_buffers 4 32k; client_max_body_size 8m;
sendfile on;
tcp_nopush on;
keepalive_timeout 60;
tcp_nodelay on;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64k;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 128k;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.0;
gzip_comp_level 2;
gzip_types text/plain application/x-javascript text/css application/xml;
gzip_vary on;
server {
listen 80;
server_name localhost;
index ;
root /web/www;
error_page 404 /;
# redirect server error pages to the static page /
#
error_page 500 502 503 504 /;
location = / {
root html;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ .php$ {
charset utf-8;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index ;
fastcgi_param SCRIPT_FILENAME /web/www/$fastcgi_script_name;
include fastcgi_params;
}
}
}
---------------------------------------------------------华丽分割线---------------------------------------------------------
第十部分:编写测试页面
vi /web/www/
输入代码
---------------------------------------------------------华丽分割线---------------------------------------------------------
第十一部分:编写每天定时切割Nginx日志的脚本
1:创建脚本/usr/local/server/nginx/sbin/cut_nginx_
vi /usr/local/server/nginx/sbin/cut_nginx_
输入以下内容:
1. #!/bin/bash
2. # This script run at 00:00
3. # The Nginx logs path
4. logs_path="/usr/local/server/nginx/logs/"
5. mkdir -p ${logs_path}$(date -d "yesterday"+"%Y")/$(date -d "yesterday"+"%m")/
6. mv ${logs_path} ${logs_path}$(date -d "yesterday"+"%Y")/$(date -d
"yesterday"+"%m")/access_$(date -d "yesterday"+"%Y%m%d").log
7. kill -USR1 `cat /usr/local/server/nginx/`
2:设置crontab,每天凌晨00:00切割nginx访问日志
# crontab -e
输入以下内容:
00 00 * * * /bin/bash /usr/local/server/nginx/sbin/cut_nginx_
发布者:admin,转转请注明出处:http://www.yc00.com/xiaochengxu/1688379440a129184.html
评论列表(0条)