zoukankan      html  css  js  c++  java
  • php-fpm的pool池子、php慢日志记录、open_basedir、php-fpm进程管理

    1、php-fpm的poo池子:
    目的:可以让不同的网站,对于不同的php解析,可以把不同的网站解析区分开。
    编辑:vim /usr/local/php5-fpm/etc/php-fpm.conf
    加入:

    [test]
    listen = /tmp/php-test.sock
    listen.mode = 666
    user = php-fpm
    group = php-fpm
    pm = dynamic
    pm.max_children = 50
    pm.start_servers = 20
    pm.min_spare_servers = 5
    pm.max_spare_servers = 35
    pm.max_requests = 500
    rlimit_files = 1024
    语法检查:/usr/local/php5-fpm/sbin/php-fpm -t
    重新加载php-fpm:/etc/init.d/php-fpm reload
    查看:ps -aux | grep php-fpm


    查看:

    在配制nginx虚拟主机的时候就可以对应着改了,比如在server里面加入以下代码:

    location ~ .php$
    {
    #把php整合
    include fastcgi_params;
    fastcgi_pass unix:/tmp/php-test.sock;
    #fastcgi_pass 127.0.0.1:8080;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME /var/www/test.com$fastcgi_script_name;
    }

    再重新加载nginx之后,解析就会分开了。

    这样子,就可以配制网站不同的php解析了,但还可以进行优化,修改成如下:
    修改:/usr/local/php5-fpm/etc/php-fpm.conf
    改成:

    [global]
    pid = /usr/local/php5-fpm/var/run/php-fpm.pid
    error_log = /usr/local/php5-fpm/var/log/php-fpm.log
    include=/usr/local/php5-fpm/etc/vconf/*
    在/usr/local/php5-fpm/etc/下创建vconf目录:mkdir /usr/local/php5-fpm/etc/vconf/  
    在创建对应虚拟机的配制文件:vim  /usr/local/php5-fpm/etc/vconf/test.conf 并加入相关代码:

    [name_xxxx]  #对应的解析池名可以自己随便取
    listen = /tmp/vconf.sock
    listen.mode=666
    user = php-fpm
    group = php-fpm
    pm = dynamic
    pm.max_children = 50
    pm.start_servers = 20
    pm.min_spare_servers = 5
    pm.max_spare_servers = 35
    pm.max_requests = 500
    rlimit_files = 1024
    检查语法:/usr/local/php5-fpm/sbin/php-fpm -t
    然后重新加载:/etc/init.d/php-fpm reload


    查看:

    以后,就可以在vconf下设置,不同虚拟机的php解析池了。

    2、php慢日志记录

    目的:为了找出网站慢的原因
    编辑访问慢的主机的配制文件:vim /usr/local/php5-fpm/etc/vconf/test.conf
    追加:

    request_slowlog_timeout = 1  #这里默认一般设置为2秒
    slowlog = /usr/local/php5-fpm/var/log/test-slow.log
    检查语法:/usr/local/php5-fpm/sbin/php-fpm -t
    然后重新加载:/etc/init.d/php-fpm reload

    写一个php文件,加入以下代码进行测试:

    <?php
    echo "vconf_test..com _php; test slow log";sleep(2);
    ?> 

    然后进行访问:

    到此慢日志记录配制完成。

     

    3、open_basedir 目录权限访问控制
    目的:设置目录权限访问控制
    编辑:vim /usr/local/php5-fpm/etc/vconf/test.conf
    追加:php_admin_value[open_basedir]=/var/www/test.com:/tmp/  #这里表示,允许访问的权限只有/var/www/test.com 和 /tmp/目录
    (可以这样子理解,即php模块进行解析时,只能运行在这2个目录下)
                     

    检查语法:/usr/local/php5-fpm/sbin/php-fpm -t
    然后重新加载:/etc/init.d/php-fpm reload
    若把/usr/local/nginx/conf/vhost/test.com.conf 的root 目录改为/var/www/222目录,尝试访问:

    然后,我们进行测试:

    总结:
    php解析模块里面的配制文件

    (/usr/local/php5-fpm/etc/vconf/test.conf )文件的 解析目录(php_admin_value[open_basedir]=/var/www/test.com:/tmp/ )的权限 限定,和
    nginx配制文件
    (/usr/local/nginx/conf/vhost/test.com.conf)中的php整合模块(fastcgi_param SCRIPT_FILENAME /var/www/test.com$fastcgi_script_name;)
    的php文件存放的路径要一样。若不一样,访问php文件时,则会显示:No input file specified.(即找不到指定文件)

     若nginx配制文件
    (/usr/local/nginx/conf/vhost/test.com.conf)中的root /var/www/test.com;和fastcgi_param SCRIPT_FILENAME /var/www/test.com$fastcgi_script_name;
    的路径不一样的话,那么访问php文件时,就显示File not found(即找不到文件)。 

     

    4、php-fpm进程管理
    编辑:vim /usr/local/php5-fpm/etc/vconf/test.conf 文件,对其配制,根据自己机器的实际情况进行配制。

    [vconf]
    listen = /tmp/vconf.sock
    listen.mode=666
    user = php-fpm
    group = php-fpm
    pm = dynamic
    ;pm =static
    pm.max_children = 50
    pm.start_servers = 20
    pm.min_spare_servers = 5
    pm.max_spare_servers = 35
    pm.max_requests = 500
    rlimit_files = 1024

    request_slowlog_timeout = 1
    slowlog = /usr/local/php5-fpm/var/log/test-slow.log

    php_admin_value[open_basedir]=/var/www/test.com/:/tmp/


     到此 lnmp 相关学习完闭。

  • 相关阅读:
    Java里if...else语句
    Java里for循环和增强版循环;break语句:跳出循环;continue:跳转循环
    Java里while循环和do...while循环
    static 修饰符
    Java类变量(静态变量)
    Java实例变量
    Java局部变量
    Java访问实例变量和调用成员方法
    Java里import语句使用
    声明式服务调用
  • 原文地址:https://www.cnblogs.com/dongjieyuan/p/9215857.html
Copyright © 2011-2022 走看看