公司有一款即将上线的应用服务端是基于ThinkPHP写的,本地测试无异常,上传到外网服务器后无法连接.这可把我和我的小伙伴们吓死了,怎么回事儿,本地测试都是对的呀! 我和我的小伙伴们开始找原因,换了一台服务器,上传上去测试可行.这两台服务器的区别在于,一台是LAMP,一台是LNMP.而出问题的就是那天LNMP.度娘后知道,nginx默认情况下不支pathinfo模式,从而不能支持ThinkPHP. nginx不支持thinkphp的原因 ThinkPHP支持通过PATHINFO和URL rewr…
因为nginx本身没有支持pathinfo,所以无法使用thinkphp框架,不过我们可以在配置里进行修改使其能够正常使用thinkphp. 1.修改配置支持pathinfo vi /etc/nginx/cong.d/default.conf 在nginx的配置中添加 location ~ \.php/?.*$ {      root html;         #这里的路径需要注意一下,自己之前几次配置错误都是因为从网上直接粘贴的路径不对        fastcgi_pass   127.0…
TP框架配置中默认URL_MODEL=1,而Nginx默认是不支持PATHINFO的.如果我们只想跑起来tp框架,很简单,只需到更改TP配置,设置URL_MODEL=3(兼容模式).但是如果要让Nginx支持ThinkPHP PATHINFO需要做如下配置: 1.设置ThinkPHP URL模式URL_MODEL=1: 2.修改nginx配置文件(红色部分更改称相应的内容) server { listen 80; server_name www.myblog.com; index index.p…
ThinkPHP支持通过PATHINFO和URL rewrite的方式来提供友好的URL,只需要在配置文件中设置 'URL_MODEL' => 2 即可.在Apache下只需要开启mod_rewrite模块就可以正常访问了,但是Nginx中默认是不支持PATHINFO的,所以nginx默认情况下是不支持ThinkPHP的.不过我们可以通过修改nginx的配置文件来让其支持ThinkPHP. 虚拟主机配置文件:  nginx/conf/vhost/127.0.0.1_8090.conf serve…
#CIserver {        listen      80;        server_name www.ci.com;        index       index.php index.html index.htm;        root        "/servers/apps/CI";      location ~ \\.php{       fastcgi_pass 127.0.0.1:9000;           fastcgi_index index.…
ThinkPHP支持通过PATHINFO和URL rewrite的方式来提供友好的URL,只需要在配置文件中设置 'URL_MODEL' => 2 即可.在Apache下只需要开启mod_rewrite模块就可以正常访问了,但是Nginx中默认是不支持PATHINFO的,所以我们需要修改 nginx.conf文件. 网上搜了很多方法都不奏效,研究了一天,发现通过以下的配置可以完美支持 'URL_MODEL' => 2 的情况了01 location /project/ {  index ind…
From : http://www.jzxue.com/wangzhankaifa/php/201108/08-8396.html   ThinkPHP支持通过PATHINFO和URL rewrite的方式来提供友好的URL,只需要在配置文件中设置 'URL_MODEL' => 2 即可.在Apache下只需要开启mod_rewrite模块就可以正常访问了,但是Nginx中默认是不支持PATHINFO的,所以我们需要修改nginx.conf文件. 网上搜了很多方法都不奏效,研究了一天,发现通过以…
ThinkPHP支持通过PATHINFO和URL rewrite的方式来提供友好的URL,但是Nginx中默认是不支持PATHINFO的,所以我们需要修改nginx.conf文件. location /project/ {    index  index.php;    if (!-e $request_filename) {        rewrite  ^/project/(.*)$  /project/index.php/$1  last;        break;    }}loca…
下面介绍如何使Nginx支持ThinkPHP的Pathinfo和URL Rewrite模式. 1.ThinkPHP给出了ThinkPHP的官方解决方案,如下: 打开Nginx的配置文件 /etc/nginx/nginx.cof 一般是在这个路径,根据你的安装路径可能有所变化.如果你配置了vhost,而且只需要你这一个vhost支持pathinfo的话,可以直接打开你的 vhost的配置文件.找到类似如下代码(不同版本的nginx可能稍有不同,但是相差不会很远): location ~ .php…
[Nginx配置虚拟主机] 每一个 server { listen       80;         server_name  www.a.com; ..... } 就表示一台虚拟域名, 然后对应的,在 /etc/hosts 修改: vim  /etc/hosts ------------------------------------------------------------------------------- [/usr/local/server/nginx/conf/nginx.…
首先建立存放网页文件的目录,执行 mkdri /usr/local/server/www  然后进入到该目录中 cd /usr/local/server/www 然后创建一个测试文件: phpinfo.php   然后,开始配置Nginx,进入 /usr/local/server/nginx/conf 将nginx.conf 复制一份命名为:nginx.conf.rxbak   然后修改 nginx.conf: index  index.html index.htm; 改为: index  in…
今日不熟一个tiinkphp框架网站的时候,由于服务器环境是centos6.5+nginx1.8,已经运行php商城项目很正常, 本以为一切比较简单,直接新建了项目文件夹,xftp上传了程序,并配置nginx.conf文件,添加新的server块, 绑定了子域名跟项目文件夹的关系,一开始访问是No input file specified页面报错,很显然是联想到是不是php文件 解析不成功造成了,检查新添加的server块,一切配置正常,为发现明细错误,php引擎调用也是复制原来php项目的 应…
nginx下基于ThinkPHP框架的网站url重写nginx下的基于thinkphp的应用的url重写,需了解thinkphp的各种url格式参数的处理逻辑以及nginx重写的原理.简单点说,无论哪种url格式,nginx都需要执行ThinkPHP下的应用单一入口文件,然后将各种url格式按照一定的格式规则进行进行参数化处理,最终执行指定模块与控制器:这个过程用户是看不到的,用户只能看到各种规则的url,这些url的规则如下: #第一种 普通get多参数方式 htt://www.jb100.n…
nginx完美支持yii2框架 server {listen 80;server_name www.peita.net peita.net;# default_server;access_log /data/wwwlogs/www.peita.net_nginx.log combined;index index.html index.htm index.php;include /usr/local/nginx/conf/wordpress.conf;root /data/wwwroot/pet/…
nginx完美支持tp框架 server { listen 80; server_name mit.520m.com.cn; access_log /data/wwwlogs/mit.520m.com.cn_nginx.log combined; index index.html index.htm index.php; #include /usr/local/nginx/conf/wordpress.conf; root /data/wwwroot/peita2.0; location / {…
在linux+Nginx+mysql+PHP 新装的服务器下,不支持重写pathinfo功能 . 需要加入这个代码 让Nginx 支持重写功能 location / { if (!-e $request_filename) { rewrite ^(.*)$ /index.php?s=$1 last; break; } }…
一.项目模块规划 1.项目分为PC端.移动端.和PC管理端,分为对应目录为 /Application/Home,/Application/Mobile,/Application/Admin: 对应入口文件为 index.php, mobile.php,admin.php,入口文件中设定绑定模块: ThinkPHP配置>>>>>>>>>>>>>>>>>>>>>>>>…
一.ThinkPHP核心文件介绍 ├─ThinkPHP.php 框架入口文件 ├─Common 框架公共文件 ├─Conf 框架配置文件 ├─Extend 框架扩展目录 ├─Lang 核心语言包目录 ├─Lib 核心类库目录 │ ├─Behavior 核心行为类库 │ ├─Core 核心基类库 │ ├─Driver 内置驱动 │ │ ├─Cache 内置缓存驱动 │ │ ├─Db 内置数据库驱动 │ │ ├─TagLib 内置标签驱动 │ │ └─Template 内置模板引擎驱动 │ └─Te…
ThinkPHP框架部署 1.下载ThinkPHP框架 下载地址:http://www.thinkphp.cn/ ThinkPHP官方网站 下载ThinkPHP3.2.3完整版,下载后如下图所示: Application:应用项目目录,可更改 Public:公用资源目录,主要用于存放images/css/js ThinkPHP:ThinkPHP核心目录 .htaccess:重写文件(伪静态.重写模式) index.php:项目入口文件 2.ThinkPHP文件夹分析 Common:核心函数库 C…
参考链接地址:http://gongwen.sinaapp.com/article-205.html 1. 模板中不能使用的标签 {$content} {$i} 2. If标签 如: <if condition="$name eq 1 "> 试验后总是有想不到的错误, 这样,还不如直接用<?php if(...){ ...?>来得快些呢. 约定: 1.所有类库文件必须使用.class.php作为文件后缀,并且类名和文件名保持一致 2.控制器的类名以Action为…
详见:http://www.ucai.cn/blogdetail/7028?mid=1&f=5 可在线运行查看效果哦 导言:ThinkPHP框架是国内知名度很高应用很广泛的php框架,我们从一些简单的开发示例中来深入了解一下这个框架给我们带来的开发便捷性,以及游刃有余的扩展设计.同时也从源码分析的角度看看框架的一些不足,尽量做全面客观的评价.这里假设大家已经使用过ThinkPHP框架,基本使用方法请参考官方文档. 一.框架分层及url路由 框架的安装非常简单,下载后放入web服务器的目录即可,但…
对于thinkphp框架项目的访问格式有多种,其中pathinfo是默认的基本访问格式,格式为:http://hostname:port/index.php/模块名/action名/参数1/参数1的值/ pathinfo其实就是一个参数,可以通过$_SERVER['PATH_INFO']获得,thinkphp框架通过解析它来找到对应的模块和方法. apache服务器默认是支持pathinfo的,但是nginx服务器默认不支持这种格式,需要进行配置,配置方式如下: 以下是mac下的MNMP中的ng…
很久不使用apache了,渐渐对apache感到陌生,因为朋友有个ZendFramework框架从apache移到nginx下,需要pathinfo模式支持.网上海搜于是开始搜索nginx+pathinfo相关文章,一开以为很容易就会配置好.因为搜索后发现有大量文章介绍nginx开启pathinfo模式,感觉不是什么难事.但是经过几个小时下来,还是没有配置好.并且大量文章的内容都极其相似,基本都是转载的.开始有点急了!因为一天过去了没有配好.继续摸索没办法,继续搜索.为了验证方便,我用a.com…
菜鸟nginx源代码剖析 框架篇(一) 从main函数看nginx启动流程 Author:Echo Chen(陈斌) Email:chenb19870707@gmail.com Blog:Blog.csdn.net/chen19870707 Date:Nov 9th, 2014 俗话说的好.牵牛要牵牛鼻子 驾车顶牛,处理复杂的东西,仅仅要抓住重点,才干理清脉络.不至于深陷当中,不能自拔.对复杂的nginx而言,main函数就是"牛之鼻",仅仅要能理清main函数.就一定能理解当中的奥秘…
本文转自:http://blog.csdn.net/ruby97/article/details/7574851 这一周一直忙于做实验室的网站,基本功能算是完成了.比较有收获的是大概了解了ThinkPHP框架.写一些东西留作纪念吧.如果对于同样是Web方面新手的你有一丝丝帮助,那就更好了挖. 以前用PHP做过一个很蹩脚的网站,为什么这么说呢,因为写的全是死代码.做完以后觉得实在是累,前端要div+css,js 后端要php,mysql,这么多东西要弄,十分头疼.所以,在接到做网站的任务后,我第一…
使用ThinkPHP框架快速搭建网站 这一周一直忙于做实验室的网站,基本功能算是完成了.比较有收获的是大概了解了ThinkPHP框架.写一些东西留作纪念吧.如果对于同样是Web方面新手的你有一丝丝帮助,那就更好了挖. 以前用PHP做过一个很蹩脚的网站,为什么这么说呢,因为写的全是死代码.做完以后觉得实在是累,前端要div+css,js 后端要php,mysql,这么多东西要弄,十分头疼.所以,在接到做网站的任务后,我第一时间想到一定要使用开发框架去做,绝不能跟以前一样那么累了. 我选择的是PHP…
这篇文章主要介绍了thinkPHP框架中执行原生SQL语句的方法,结合实例形式分析了thinkPHP中执行原生SQL语句的相关操作技巧,并简单分析了query与execute方法的使用区别,需要的朋友可以参考下   本文实例讲述了thinkPHP框架中执行原生SQL语句的方法.分享给大家供大家参考,具体如下: 怎样在thinkphp里面执行原生的sql语句? ? 1 2 3 $Model = new Model();//或者 $Model = D(); 或者 $Model = M(); $sql…
为了帮老师用ThinkSNS二次开发一个微博系统,专门花了几天学习ThinkPHP框架,现在将一些ThinkPHP入门知识作以记录. 首先声明: 本文不是完全教程,只是将开发中碰到的问题作以总结,如果需要学习ThinkPHP框架,请参考官网文档: 官网首页 ThinkPHP3.1快速入门教程(更新中) ThinkPHP完全开发手册 ThinkPHP3.1 API手册 附:开源微博系统ThinkSNS 目录结构 目录/文件 说明 ThinkPHP.php 框架入口文件 Common 框架公共文件目…
一.PHP主流框架介绍 主流的框架有laravel.symfony.thinkphp MVC和三层结构 MVC可以说是一种开发模式,三层结构是一种开发习惯,严格来讲,他们两者是完全不同的概念,但是在实际开发当中又有各种联系: MVC是一种将视图.控制器.数据三种分开的一种开发模式. M - Model 模型 工作:编写module类,负责数据的操作 V - View 视图(模板) 工作:编写html文件,负责前台页面展示 C - Controller 控制器 工作:编写类文件,IndexCont…
现在有点小兴奋,因为在在BAE上部署ThinkPHP框架的问题快折腾一天了,午觉都没睡,不过没白整总算有点结果.不扯淡了,直入正题吧. 之前熟悉ThinkPHP框架,想在BAE上用ThinkPHP做点东西,部署了一天的环境了总结一下把: 一:首先你得有百度帐号吧,别着急先登上.然后进入快速创建应用如下图所示 二.创建应用的具体过程就不多说了吧不是今天的重点,然后ThinkPHP官网上去下一个云引擎版本链接如下:http://www.thinkphp.cn/down.html,我是用的ThinkP…