201901建站运维笔记 18

4.52-55 php-fpm配置.md
PHP-FPM配置文件路径:
配置文件 /usr/local/php-fpm/etc/php-fpm.conf
include 包含了一个目录  /usr/local/php-fpm/etc/php-fpm.d/*.conf 下面所有子配置文件
www.conf 就是其中子配置文件

php-fpm restart 重启服务php-fpm

www.conf配置讲解
pool 名字: [www] 可以自定义,启动后,ps aux |grep php-fpm 看最右侧,就是pool的名字
listen 指定监听的IP:port或者socket地址
        这个地址需要和nginx配置文件里面的那个fastcgi_pass所制定的地址一致,否则就会502
        如果监听的是socket文件,那么要保证nginx服务用户(nginx)对该socket文件有读写权限,否则502 报Permission denied
listen.mode 指定socket文件的权限
pm = dynamic 动态模式,启动服务的形式,启动时子进程的数量,也可以是静态的static
pm.max_children = 5 最大进程数
pm.start_servers = 2 启动几个子进程
pm.min_spare_servers = 1  空闲时,最少不能少于几个子进程
pm.max_spare_servers = 3  空闲时,最多不能多于几个子进程

php_flag[display_errors] = off  #pfp文件有错误时候,不在页面显示 ,生产环境 off,调试可以 on
php_admin_value[error_log] = /var/log/fpm-php.www.log
php_admin_flag[log_errors] = on
php_admin_value[error_reporting] = E_ALL  #错误日志的级别

配置slow 日志
slowlog = /tmp/php.slow
request_slowlog_timeout = 1   #设置超时时间1秒后 记录日志/tmp/php.slow中

在php.ini中配置open_basedir
open_basedir =  /data/wwwroot/blog.aminglinux.cc:/tmp  #定义php-fpm这个服务所能够允许在某一个路径目录下活动,多个路径目录用冒号:分隔
建议在 /usr/local/php-fpm/etc/php-fpm.d/*.conf 下相应的子配置文件中定义
php_admin_value[open_basedir] = /data/wwwroot/blog.aminglinux.cc:/tmp  #必须加/tmp 在这个目录会有临时文件生成

同一站点有多个网站WEB,如有blog wordpress 和 bbs discuz是可以,
配置多个pool 区分开来
定义多个配置文件,在配置文件中指定不同的listen地址  不同的 [pool_name]
[blog]
user = php-fpm  #池子的使用  用户名
group = php-fpm  #池子的使用  用户组名
listen = /tmp/blog.socket   #对应修改nginx.cong配置文件中 fastcgi_pass  unix:/tmp/blog.socket;
listen.mode = 0666
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
slowlog = /tmp/php.slow
request_slowlog_timeout = 1
php_flag[display_errors] = off
php_admin_value[error_log] = /var/log/fpm-php.www.log
php_admin_flag[log_errors] = on
php_admin_value[error_reporting] = E_ALL
php_admin_value[open_basedir] = /data/wwwroot/blog.aminglinux.cc:/tmp   #生产环境必须

[bbs]
user = php-fpm
group = php-fpm
listen = /tmp/bbs.socket
listen.mode = 0666
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
slowlog = /tmp/php.slow
request_slowlog_timeout = 1
php_flag[display_errors] = on
php_admin_value[error_log] = /var/log/fpm-php.www.log
php_admin_flag[log_errors] = on
php_admin_value[error_reporting] = E_ALL
php_admin_value[open_basedir] = /data/wwwroot/bbs.aminglinux.cc:/tmp

查看php.ini路径:
1) /usr/local/php-fpm/bin/php -i |head
2)用phpinfo(); 生成一个php文件放在网站上并访问
     <?php
        phpinfo();
     ?>

补充:
curl -k -H "host:bbs.aminglinux.cc" https://127.0.0.1/phpinfo.php

在php.ini中可以禁用掉 phpinfo()的函数功能,在行 disable_function = phpinfo 中指定,访问时候会是白页,即500错误。

grep -v '^;'   #过滤掉以 ; 开头行
grep -v '^$'   #过滤掉空行

4.56-MariaDB的密码重置.md
如果记得root的密码:
mysqladmin -uroot -paminglinux password "aming-linux"
如果不记得root密码:
1)编辑/etc/my.cnf
        增加:skip-grant
        重启服务:/etc/init.d/mysqld restart
        不用密码进mysql:mysql -uroot
2)登录进MariaDB,执行
        use mysql  切换到mysql库
        desc user  查看user表的所有字段
        update user set authentication_string=password("aming-linux") where user='root';
3)退出MariaDB,删除/etc/my.cnf里面的skip-grant, 重启服务
4)用新密码登录即可

常识:
mysql在5.7.36版本之后把密码字段存到了authentication_string字段里,在之前版本存在password字段里。
update user set password=password("aming-linux") where user='root';

4.57-MariaDB慢查询日志.md
为什么要配置慢查询日志?
目的是为了帮助我们分析MariaDB的瓶颈点。
如何配置?
1)进入MariaDB里面执行:
        show variables like 'slow%';
        show variables like 'datadir';
        show variables like 'long%';
2)打开配置文件/etc/my.cnf,编辑,增加:
        slow_query_log = ON
        slow_query_log_file = /data/mysql/fanlinux01-slow.log
        long_query_time = 2
3)重启服务 /etc/init.d/mysqld restart
4)模拟慢查询
        select sleep(5);
5)查看慢查询日志:
        cat /data/mysql/fanlinux01-slow.log

 

转载于:https://my.oschina.net/u/4067241/blog/3008584

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值