【问题标题】:problems with kohana and nginx / php-fpmkohana 和 nginx / php-fpm 的问题
【发布时间】:2011-09-08 05:38:51
【问题描述】:

我在让 kohana 出现时遇到了问题。我对 nginx 和它的配置有点陌生。 这是一个 CentOS 5.6 盒子。 配置文件:http://pastie.org/2499212

我可以让 phpinfo() 正确返回或其他静态文件。它似乎对重写规则感到窒息。 顺便说一句,这个特定的配置适用于另一台服务器和 kohana。提前感谢您的帮助。

【问题讨论】:

  • 如果这是常见的route not found 问题,只需在您的应用程序上创建一个匹配Route::set('files', 'file/get(/<file>)', array('file' => '.+')) 之类的路由
  • 还要指定 Kohana 版本,因为即使在较低版本之间也总会有一些重大变化。

标签: nginx kohana php


【解决方案1】:

配置中的这一行

# PHP FILES MIGHT BE TO HANDLED BY KOHANA
try_files $uri $uri/ @kohana;

没有多大意义,因为您正在匹配 .php 文件。 Kohana 不能以这种方式工作,因为它处理的 URL 类似于 /index.php/controller/action 或 /controller/action,它们都不是以 .php 结尾,因此不符合您的规则。

这个配置应该适合你:

location /
{
    try_files $uri /index.php?$args;
}

location = /index.php
{
    include fastcgi.conf;
    fastcgi_param KOHANA_ENV production;
    fastcgi_pass php-nolimits-staging;
    track_uploads proxied 30s;
}

如果你愿意,你可以有另一个位置块来匹配 .php 文件,这样你就可以在你的 webroot 中拥有静态 PHP 文件。我的配置是针对 Kohana 在 webroot 中时的。

从基本的基本配置开始 ^ 看看是否有效。如果您需要更多帮助,请查看 Freenode 上的#nginx。

【讨论】:

  • fastcgi_pass php-nolimits-staging; 是做什么的?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-08-16
  • 2013-02-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多