解决ThinkPHP在Nginx下无法使用pathin方式的问题
2014-01-08 20:10
531 查看
[环境]
Ubuntu 12.04 32bit
AMH面板 4.2
Nginx 1.4.4
PHP 5.3.27
ThinkPHP 3.1.2
--------------------------------- 不太华丽的分割线 ---------------------------------
其实就是直接写rewrite文件,具体的语法请百度之,我也不太懂,也是在网上半抄半改才勉强搞定的,rewrite内容在下面放出:
备注:我是直接在AMH上配置Nginx虚拟主机的,所以路径什么的可能会有些不同
在写rewrite之前先将原vhost下对应的网站配置中的location ~ *\.php$ {}整个注释或删除(注意备份哦!!)
location / {
index index.php;
if (!-e $request_filename) {
rewrite ^/(.*)$ /index.php/$1 last;
break;
}
}
location ~ .*\.php
{
set $path_info "";
set $real_script_name $fastcgi_script_name;
if ($fastcgi_script_name ~ "^(.+?.php)(/.+)$") {
set $real_script_name $1;
set $path_info $2;
}
fastcgi_pass unix:/tmp/php-cgi-myar.kollway.com.sock;
fastcgi_index index.php;
include fcgi-host.conf;
fastcgi_param DOCUMENT_ROOT /web$subdomain;
fastcgi_param SCRIPT_FILENAME /web$real_script_name;
fastcgi_param PATH_INFO $path_info;
}
--------------------------------- 不太华丽的分割线 ---------------------------------
参考文章:
http://www.codesth.com/%E4%B8%8D%E7%94%A8rewrite%E5%85%BC%E5%AE%B9%EF%BC%8C%E8%A7%A3%E5%86%B3nginx%E4%B8%8D%E6%94%AF%E6%8C%81thinkphp-pathinfo%E6%A8%A1%E5%BC%8F/
http://blog.csdn.net/realghost/article/details/9082847
Ubuntu 12.04 32bit
AMH面板 4.2
Nginx 1.4.4
PHP 5.3.27
ThinkPHP 3.1.2
--------------------------------- 不太华丽的分割线 ---------------------------------
其实就是直接写rewrite文件,具体的语法请百度之,我也不太懂,也是在网上半抄半改才勉强搞定的,rewrite内容在下面放出:
备注:我是直接在AMH上配置Nginx虚拟主机的,所以路径什么的可能会有些不同
在写rewrite之前先将原vhost下对应的网站配置中的location ~ *\.php$ {}整个注释或删除(注意备份哦!!)
location / {
index index.php;
if (!-e $request_filename) {
rewrite ^/(.*)$ /index.php/$1 last;
break;
}
}
location ~ .*\.php
{
set $path_info "";
set $real_script_name $fastcgi_script_name;
if ($fastcgi_script_name ~ "^(.+?.php)(/.+)$") {
set $real_script_name $1;
set $path_info $2;
}
fastcgi_pass unix:/tmp/php-cgi-myar.kollway.com.sock;
fastcgi_index index.php;
include fcgi-host.conf;
fastcgi_param DOCUMENT_ROOT /web$subdomain;
fastcgi_param SCRIPT_FILENAME /web$real_script_name;
fastcgi_param PATH_INFO $path_info;
}
--------------------------------- 不太华丽的分割线 ---------------------------------
参考文章:
http://www.codesth.com/%E4%B8%8D%E7%94%A8rewrite%E5%85%BC%E5%AE%B9%EF%BC%8C%E8%A7%A3%E5%86%B3nginx%E4%B8%8D%E6%94%AF%E6%8C%81thinkphp-pathinfo%E6%A8%A1%E5%BC%8F/
http://blog.csdn.net/realghost/article/details/9082847
相关文章推荐
- 多种方式解决spring boot swagger ui使用 nginx 部署后无法使用问题
- LinqToEntity中.toString()与.toShortDateTime()无法使用的问题解决方式
- thinkphp使用view的时候无法利用phpexcel导出数据问题的解决
- 解决无法使用http访问安装好nginx和ftp的图片服务器的问题
- 解决thinkPHP3.2.3使用Smarty模板后无法使用系统常量问题
- 【老牌系统】解决快捷方式无法使用问题
- nginx 负载均衡 使用ip_hash方式解决session问题 测试
- 安装完vs.2005之后,重新安装iis后无法使用http方式访问asp.net工程的页面的问题的解决方法
- 【解决快捷方式无法使用问题】
- 【081】使用Nginx的官方Docker镜像,启动容器后无法显示自己网站页面,总显示Nginx官方默认页面的问题的解决方法
- 解决thinkphp配置中,项目目录不可写,目录无法自动生成! 请使用项目生成器或者手动生成项目目录~问题
- 解决thinkPHP3.2.3使用Smarty模板后无法使用系统常量问题!
- websocket slb tcp 方式示例,解决slb无法使用平常http握手链接的问题
- 解决WCF的service端无法使用泛型的问题
- Django解决无法使用MySQLdb的问题
- ubuntu16.04无法连接无线的问题解决方式以及QQ的安装
- 解决Ubuntu下无法使用Wireshark抓包的问题
- (原创)解决NIOS 11.0使用友晶示例程序无法编译的问题
- 解决VS2013/VS2010简体中文版无法使用ReSharper快捷键的问题
- vmware虚拟机 centos创建完整克隆后 网卡无法使用问题解决