thinkphp5.0 +nginx在contos7下配置访问

Nginx vhost配置:
server
{
listen 80;
server_name lp.t1.com t1.com;
index index.php;
#根目录设置到Public下
root /home/wwwroot/lp.t1.com/public;

    #定义变量
    set $root /home/wwwroot/lp.t1.com/public;

    location ~ [^/]\.php(/|$)
    {
        try_files $uri =404;
        fastcgi_pass  unix:/tmp/php-cgi.sock;
        fastcgi_index index.php;
        #设置PATH_INFO
        fastcgi_split_path_info ^((?U).+.php)(/?.+)$;
        fastcgi_param PATH_INFO $fastcgi_path_info;
        fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
        fastcgi_param SCRIPT_FILENAME $root$fastcgi_script_name;
        #引入fastcgi配置
        include fastcgi.conf;
    }

    #从URL中去掉index.php入口文件
    location /
    {
        if (!-e $request_filename) {
            rewrite  ^(.*)$  /index.php?s=/$1  last;
            break;
        }
    }

    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
    {
        expires      30d;
    }

    location ~ .*\.(js|css)?$
    {
        expires      12h;
    }

    location ~ /.well-known {
        allow all;
    }

    location ~ /\.
    {
        deny all;
    }

    access_log off;
}

    fastcgi.conf配置:
    fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;

fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;

fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param REQUEST_SCHEME $scheme;
fastcgi_param HTTPS $https if_not_empty;
fastcgi_param GATEWAY_INTERFACE CGI/1.1;
fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;

fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param REMOTE_PORT $remote_port;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_NAME $server_name;

PHP only, required if PHP was built with --enable-force-cgi-redirect

fastcgi_param REDIRECT_STATUS 200;

以前的

fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/";

开放目录访问权限(因为根目录设置到public下导致框架访问上级目录权限不够)

fastcgi_param PHP_ADMIN_VALUE "open_basedir=/home/wwwroot/:/tmp/:/proc/";

php.ini打开cgi.fix_pathinfo方便nginx解析路径

cgi.fix_pathinfo = 1

配置好之后重启Nginx和PHP-FPM

service nginx restart

service php-fpm restart

重启成功后你就可以这样访问:

domain/module/controller/action?params=value

原文地址:http://blog.51cto.com/kangjunfei/2131192

时间: 2024-10-18 12:28:14

thinkphp5.0 +nginx在contos7下配置访问的相关文章

nginx在windows下配置缓存服务器缓存静态资源+Tomcat集群

nginx安装目录 修改nginx.conf文件配置负载均衡配置Tomcat集群并设置动静分离 #user nobody; error_log logs/error.log; worker_processes 2; worker_rlimit_nofile 1024; events { worker_connections 1024; } http { log_format main '$remote_addr - $remote_user [$time_local] "$request&quo

Nginx 单IP下 配置多个server https 的问题

我们的负载均衡架构是这样的: 请求 -> 网络 -> LVS集群 -> Nginx 集群 -> APP LVS使用FULLNAT模式,每台Nginx 机器只有一个IP(内网IP),LVS也是把流量转到这个IP.如果Nginx想对多个域名使用https,比如两个域名 wandoujia.com 和 wandoulabs.com ,是可能有问题的. 看下面的配置(两个server写在不同文件中,用 include * 加载): server { listen 80; listen 44

nginx反向代理时配置访问密码

在有些情况下,我们需要对服务器上的某些资源进行限流或者禁止陌生人访问,我们可以通过nginx配置来对url添加访问密码. 效果如下 nginx 开启访问验证在 nginx 下,提供了 ngx_http_auth_basic_module 模块实现让用户只有输入正确的用户名密码才允许访问web内容.默认情况下,nginx 已经安装了该模块.所以整体的一个过程就是先用第三方工具( htpasswd,或者使用 openssl)设置用户名.密码(其中密码已经加过密),然后保存到文件中,接着在 nginx

Nginx + django windows下配置

1.下载nginx, 去http://nginx.org/en/download.html 下载,我下载的是1.8 stable版本. 2.配置文件/conf/nginx.conf #user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; events { wo

Windows环境nginx在phpStudy下配置https

Nginx配置文件内容如下 #power by www.php.cn #user  nobody; worker_processes  1; #error_log  logs/error.log; #error_log  logs/error.log  notice; #error_log  logs/error.log  info; #pid        logs/nginx.pid; events { worker_connections  1024; } http { include  

大发彩票盘口平台,带独立代理后台thinkphp5.0配置nginx重写规则

大发彩票盘口平台,带独立代理后台thinkphp5.0配置nginx重写规则程序源码参数说明: 运行环境:php5.2+mysql 界面语言:简体中文 源码授权:无加密文件及认证授权,永久性可直接使用. 版本支持:PC/WAP网页版 编程语言:PHP 手机版独家对接的,完整无错! 此源码经过测试人员实测截图,保证100%和截图一致!!! server {listen 80; #端口号server_name demo.aa.com; #域名access_log /data/rootlogs/dem

Nginx环境下配置PHP使用的SSL认证(https)

最近一段时间发现好多网站都从http协议变成了加密的https协议,比如说百度.吾志等等.https看起来比http高端了好多,而且在不同的浏览器向上还会显示出不同于http的URL展示效果(比如说chrome 和QQ浏览器 使用https协议的网址就会变色). 于是自己就想着把自己的网站加一个ssl证书,使之变成https://iwenku.net 最开始我使用的是腾讯云的服务器,服务器系统是Windows,使用Windows虽然坏处挺多,但是也有好处,那就是Windows是图形化界面的,这样

浅谈Nginx(二)—http下server配置

此文介绍Nginx下的http模块,着重介绍http模块下的server服务 --------依据"马哥教育"主讲人马永亮导师的上课笔记整理------- 目录  一. http相关的基本配置:     1) listen                2) server_name           3) tcp_nodelay     4) sendfile      二. 定义路径相关的配置:     1)root path     2)location     3)alias 

Nginx,Apache只允许域名访问详细配置

Nginx,Apache只允许域名访问详细配置 一.nginx配置只允许域名访问 # 设置不允许Ip访问web(default_server) server { listen 80 default_server; server_name _; return 403; } # 设置www.meteor-yu.com域名访问web server { listen 80; server_name www.meteor-yu.com; location /ngx_status { stub_status