PHP框架 nginx 伪静态规则

最近在调研各种的PHP框架(ThinkPHP, Laravel, Yii)感觉Laravel看上去很美,深入了解了下。开发机使用的是Apache,Stage上跑的nginx,部署后碰到所有的重定向都报404错误的情况。搞了半天,最后把下面这段代码加到nginx的配置中终于搞定了。

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

配置文件看上去是这样的:

server {
listen 80;
server_name yourdomain.com;
root 'PATH_POINTING TO YOUR PUBLIC WEB FOLDER';
index index.php;
try_files $uri $uri/ @rewrite;
location @rewrite {
rewrite ^/(.*)$ /index.php?_url=/$1;
}
# PHP FPM configuration.
location ~ \.php {
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_split_path_info ^(.+\.php)(.*)$;
include /etc/nginx/fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
# We don't need .ht files with nginx.
location ~ /\.ht {
deny all;
}

文章来源: PHP框架 nginx 伪静态规则

人吐槽 人点赞

猜你喜欢

发表评论

用户名: 密码:
验证码: 匿名发表

你可以使用这些语言

查看评论:PHP框架 nginx 伪静态规则