搜索

首页  >  问答  >  正文

php - 自定义Nginx配置不成功,为何?

原先我在apache中的配置如下:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [QSA,L]

作用:如果URL所指向的文件在服务器目录中不存在,则将URL全指向index.php中。

结构我是按文档中自定义Nginx配置中描述所建,Nginx我不太会用了个配置转换工具得到在Nginx中的配置:

# nginx configuration
location / {
    if (!-e $request_filename){
        rewrite ^(.*)$ /index.php break;
    }
}

但放到云景的PHP空间的conf/nginx_server.inc文件中后空间就无法打开了,想问下为啥!

高洛峰高洛峰2789 天前717

全部回复(3)我来回复

  • 阿神

    阿神2017-04-10 15:09:48

    这个问题算是解决了,最终我还是在slimphp项目的readme中找到了解决方法,如下:

    location / {
        try_files $uri $uri/ /index.php?$args;
        root /opt/src/app;
    }
    

    再对PHP也做了点设置:

    location ~ \.php$ {
        root /opt/src/app;
        fastcgi_pass 127.0.0.1:8080;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME /opt/src/app/$fastcgi_script_name;
        include /opt/apps/nginx/conf/fastcgi_params;
    }
    

    回复
    0
  • PHP中文网

    PHP中文网2017-04-10 15:09:48

    http://cloudscape.sohu.com/doc/operation/app-conf.shtml
    参考文档中的标题6,自定义Nginx配置部分

    回复
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-10 15:09:48

    nginx的自定义配置可能与您的项目整体配置有冲突,可以登录到容器上查看相关配置,修改下配置试试看。

    回复
    0
  • 取消回复