美文网首页
lnmp一键安装运行tp5

lnmp一键安装运行tp5

作者: 提莫队长1234 | 来源:发表于2018-01-10 08:40 被阅读58次

    nginx配置文件

    user  www www;
    
    worker_processes auto;
    
    error_log  /home/wwwlogs/nginx_error.log  crit;
    
    pid        /usr/local/nginx/logs/nginx.pid;
    
    #Specifies the value for maximum file descriptors that can be opened by this process.
    worker_rlimit_nofile 51200;
    
    events
        {
            use epoll;
            worker_connections 51200;
            multi_accept on;
        }
    
    http
        {
            include       mime.types;
            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 50m;
    
            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 256k;
    
            gzip on;
            gzip_min_length  1k;
            gzip_buffers     4 16k;
            gzip_http_version 1.1;
            gzip_comp_level 2;
            gzip_types     text/plain application/javascript application/x-javascript text/javascript text/css application/xml application/xml+rss;
            gzip_vary on;
            gzip_proxied   expired no-cache no-store private auth;
            gzip_disable   "MSIE [1-6]\.";
    
            #limit_conn_zone $binary_remote_addr zone=perip:10m;
            ##If enable limit_conn_zone,add "limit_conn perip 10;" to server section.
    
            server_tokens off;
            access_log off;
    
    server
        {
            listen 80;
            #listen [::]:80;
            server_name ty.com;
            index index.html index.htm index.php default.html 
            default.htm default.php;
            root  /home/wwwroot/default/public/;
            location / {
              if (!-e $request_filename) {
               rewrite  ^(.*)$  /index.php?s=$1  last;
               break;
              }
           }
            location ~ \.php {
              #fastcgi_pass remote_php_ip:9000;
              fastcgi_pass unix:/tmp/php-cgi.sock;
              fastcgi_index index.php;
              include fastcgi_params;
              set $real_script_name $fastcgi_script_name;
              if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {
                  set $real_script_name $1;
                  #set $path_info $2;
               }
            fastcgi_param SCRIPT_FILENAME     
            $document_root$real_script_name;
            fastcgi_param SCRIPT_NAME $real_script_name;
            #fastcgi_param PATH_INFO $path_info;
            }
            location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
            {
                expires      30d;
            }
    
            location ~ .*\.(js|css)?$
            {
                expires      12h;
            }
            access_log  /home/wwwlogs/access.log;
        }
    include vhost/*.conf;
    }
    

    防跨目录设置

    LNMP 1.1及之前的版本使用php.ini里面,open_basedir设置

    LNMP 1.2及更高版本防跨目录功能使用.user.ini,该文件在网站根目录下,可以修改.user.ini 里面的open_basedir的值来设置限制访问的目录或删除来移除防跨目录的设置。

    .user.ini文件无法直接修改,如要修或删除需要先执行:chattr -i /网站目录/.user.ini
    可以使用winscp文件管理vim编辑器nano编辑器进行修改。
    删除的话rm -f /网站目录/.user.ini 就可以。
    修改完成后再执行:chattr +i /网站目录/.user.ini
    .user.ini不需要重启一般5分钟左右生效,也可以重启一下php-fpm立即生效。
    如果要更改网站目录必须要按上述方法修改防跨目录的设置,否则肯定报错!!

    LNMP 1.4上如果不想用防跨目录或者修改.user.ini的防跨目录的目录还需要将 /usr/local/nginx/conf/fastcgi.conf 里面的fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/"; 在该行行前添加 # 或删除改行,需要重启nginx。

    LNMP 1.4上也可以直接使用lnmp1.4/tools/ 目录下的 ./remove_open_basedir_restriction.sh 进行移除。
    在Thinkphp、codeigniter、Laravel等框架下,网站目录一般是在public下,但是public下的程序要跨目录调用public上级目录下的文件,因为LNMP默认是不允许跨目录访问的,所以都是必须要将防跨目录访问的设置去掉,有时候这些框架类的程序提示500错误也可能是这个问题引起的。

    LNMPA或LAMP 模式1.2版本以上的防跨目录的设置使用的对应apache虚拟主机配置文件(lnmp管理工具添加的话文件是 /usr/local/apache/conf/vhost/域名.conf )里的php_admin_value open_basedir参数进行设置。如果不需要设置可以在前面加 # 进行注释,或自行修改目录的限制。
    重启apache生效。

    相关文章

      网友评论

          本文标题:lnmp一键安装运行tp5

          本文链接:https://www.haomeiwen.com/subject/vemnnxtx.html