Heim >Backend-Entwicklung >PHP-Tutorial >自定义Nginx配置不成功,为何?
原先我在apache中的配置如下:
<code class="lang-apache">RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^ index.php [QSA,L] </code>
作用:如果URL所指向的文件在服务器目录中不存在,则将URL全指向index.php中。
结构我是按文档中自定义Nginx配置中描述所建,Nginx我不太会用了个配置转换工具得到在Nginx中的配置:
<code class="lang-nginx"># nginx configuration location / { if (!-e $request_filename){ rewrite ^(.*)$ /index.php break; } } </code>
但放到云景的PHP空间的conf/nginx_server.inc
文件中后空间就无法打开了,想问下为啥!
原先我在apache中的配置如下:
<code class="lang-apache">RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^ index.php [QSA,L] </code>
作用:如果URL所指向的文件在服务器目录中不存在,则将URL全指向index.php中。
结构我是按文档中自定义Nginx配置中描述所建,Nginx我不太会用了个配置转换工具得到在Nginx中的配置:
<code class="lang-nginx"># nginx configuration location / { if (!-e $request_filename){ rewrite ^(.*)$ /index.php break; } } </code>
但放到云景的PHP空间的conf/nginx_server.inc
文件中后空间就无法打开了,想问下为啥!
这个问题算是解决了,最终我还是在slimphp项目的readme中找到了解决方法,如下:
<code>location / { try_files $uri $uri/ /index.php?$args; root /opt/src/app; } </code>
再对PHP也做了点设置:
<code>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; } </code>
http://cloudscape.sohu.com/doc/operation/app-conf.shtml
参考文档中的标题6,自定义Nginx配置部分
nginx的自定义配置可能与您的项目整体配置有冲突,可以登录到容器上查看相关配置,修改下配置试试看。