1

我刚从开发转到生产。我意识到我的路由在生产环境中不起作用。我正在使用 LEMP 堆栈。

谁能指导我正确的方向?

这是我的 nginx 配置。

server {

listen   80;
server_name localhost;
charset utf-8;
index index.php index.html index.htm;
set $root_path '/usr/share/nginx/ppl/public';
root $root_path;

try_files $uri $uri/ @rewrite;

location @rewrite {
    rewrite ^/(.*)$ /index.php?_url=/$1;
}

location ~ \.php {
    fastcgi_pass unix:/var/run/php5-fpm.sock;
    fastcgi_index /index.php;
    #fastcgi_pass 127.0.0.1:9000;
    include /etc/nginx/fastcgi_params;

    fastcgi_split_path_info       ^(.+\.php)(/.+)$;
    fastcgi_param PATH_INFO       $fastcgi_path_info;
    fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}

location ~* ^/(css|img|js|flv|swf|download)/(.+)$ {
    root $root_path;
}

location ~ /\.ht {
    deny all;
}
}

这是我的路由代码片段。

$di->set('router', function () { $router = new Router();

$router->add(
    '/list/([0-9]+)/([a-z0-9\-]+)',
    array(
        'controller' => 'Listing',
        'action'     => 'detailed',
        'id' => 1,
        'title' => 2

    )
);   
$router->add('/', array(
    'controller' => 'Listing',
    'action' => 'home'
)); 

$router->removeExtraSlashes(true);
return $router;
},true);

我可以通过 url 访问控制器和相应的操作。

有什么重要的我想念的吗?

谢谢大家。

4

1 回答 1

1

似乎这是一个区分大小写的问题

在路由代码段中,已更改

上市到上市使应用程序工作

于 2014-11-08T02:13:26.277 回答