首页 > 后端开发 > php教程 > yaf框架的url访问问题

yaf框架的url访问问题

WBOY
发布: 2016-06-23 13:58:10
原创
1675 人浏览过

很早就听说了鸟哥的yaf,最近想搭一个试用研究下
但是访问遇到了一些问题:
是在lnmp环境,nginx配置是 

root  /www/web/root;
   if (!-e $request_filename) {
       rewrite ^/(.*)$ /index.php/$1 last;
   }

我直接访问domain.com/mainweb没问题,能访问到默认control  index,
但是我访问domain.com/mainweb/index/index 确是500,然后nginx错误日志是rewrite or internal redirection cycle while processing "/index.php/index.php/index.php/index.php/index.php/index.php/index.php/index.php/index.php/index.php/index.php/index.php/mainweb/index/index"
访问 index control中的其他action 也是500错误


回复讨论(解决方案)

对比一下有什么不同

server {       listen  80;       server_name     www.phpno.com;       root /home/www/www_phpno_com/admin_wwwroot;       access_log off;       error_page 404  /404.html;       location /404.html {               root /home/www/www_phpno_com/admin_wwwroot;       }       location /{               index index.html index.htm index.php;               if (-e $request_filename) {                       break;               }               if (!-e $request_filename) {                       rewrite ^/(.*)$ /index.php/$1 last;                       break;               }       }        location ~ .+\.php($|/) {           root           /home/www/www_phpno_com/admin_wwwroot;           fastcgi_index index.php;           fastcgi_split_path_info ^(.+\.php)(.*)$;           fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;           fastcgi_param   PATH_INFO               $fastcgi_path_info;           fastcgi_param   PATH_TRANSLATED $document_root$fastcgi_path_info;           fastcgi_pass   127.0.0.1:9000;       #    fastcgi_index  index.php;       #    fastcgi_param  SCRIPT_FILENAME  /home/www/www_phpno_com/admin_wwwroot/$fastcgi_script_name;       #    fastcgi_param  SCRIPT_FILENAME  /usr/local/nginx/html/$fastcgi_script_name;           include        fastcgi_params;       }   }
登录后复制

感谢楼上,
我发现我只要配置fastcgi的location ~ .*\.(php|php5)?$  改为你的location ~ .+\.php($|/)
就全解决了
下面是我的facgi param:
     fastcgi_pass  127.0.0.1:9000;
     fastcgi_index index.php;
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  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

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板