1、nginx是不支持pathinfo的
ThinkPHP支持通过PATHINFO和URL rewrite的方式来提供友好的URL,只需要在配置文件中设置 ‘URL_MODEL’ => 2 即可。在Apache下只需要开启mod_rewrite模块就可以正常访问了,但是Nginx中默认是不支持PATHINFO的,
所以我们需要修改/alidata/server/nginx-1.4.7/conf/vhosts修改这个文件,重写路由
代码如下:
server {
listen 80 default;
server_name _;
index index.html index.htm index.php;
root /alidata/www/default;
#include /alidata/www/default/.htaccess;
location /
{
index index.php;
if (!-e $request_filename) {
rewrite ^/(.*)$ /index.php/$1 last;
break;
}
}
location ~ .+\.php($|/) {
set $script $uri;
set $path_info “/”;
if ($uri ~ “^(.+\.php)(/.+)”) {
set $script $1;
set $path_info $2;
}
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php?IF_REWRITE=1;
include /alidata/server/nginx-1.4.7/conf/fastcgi_params;
fastcgi_param PATH_INFO $path_info;
fastcgi_param SCRIPT_FILENAME $document_root/$script;
fastcgi_param SCRIPT_NAME $script;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}
location ~ .*\.(js|css)?$
{
expires 1h;
}
access_log /alidata/log/nginx/access/default.log;
}
default.conf
修改完配置,就需要重启Nginx,可以通过重启实例(即系统)或者通过命令
重启实例略
操作命令如下
nginx -s reload 修改配置后重新加载生效关闭nginx:nginx -s stop 快速停止nginx
阿里云服务器在这里重启会有问题(即:”/alidata/server/nginx/logs/nginx.pid” failed)
(参考地址为:http://www.dedecms8.com/os/linux/49999.html)
解决办法就是直接在ssh或者其他终端里执行:
/alidata/server//nginx/sbin/nginx -c /alidata/server//nginx/conf/nginx.conf
然后切换到logs目录下,执行ll看到nginx.pid进程,即说明正常启动:
[root@localhost nginx]# cd logs/
[root@localhost logs]# ll
总用量 12
-rw-r–r– 1 root root 1246 12月 9 18:10 access.log
-rw-r–r– 1 root root 516 12月 10 15:39 error.log
-rw-r–r– 1 root root 5 12月 10 15:38 nginx.pid
这样就OK了~~
Tor Linux relay服务器内存不足引起死机事件的解决 | Tor Linux relay服务器内存不足引起死机事件的解决 ...