资讯专栏INFORMATION COLUMN

nginx下thinkphp的URL重定向

Zack / 2911人阅读

摘要:最近使用框架进行开发的时候遇到一个问题,把项目部署到上用当服务器的情况下,重定向出现问题,同样的后缀,在本地环境可以正常访问,在服务器上就出现了,但是使用的全路径是可以访问的。

最近使用thinkPHP框架进行开发的时候遇到一个问题,把项目部署到Linux上用nginx当服务器的情况下,URL重定向出现问题,同样的URL后缀,在本地环境可以正常访问,在服务器上就出现了404 ,但是使用TP的全路径URL是可以访问的。后来经过查看发现是由于本地环境和服务器上使用的服务载体不同导致的,本地环境使用的是Apache,服务器上使用的是nginx。经过查看TP的官方文档,解决了问题:
Apache的URL重写:


 RewriteEngine on
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]

nginx的重写,需要在nginx的配置信息中添加:

  location / { // …..省略部分代码
   if (!-e $request_filename) {
   rewrite  ^(.*)$  /index.php?s=$1  last;
   break;
    }
 }

然后要把项目的URL_MODEL改成2:

"URL_MODEL"             =>  2,       URL访问模式,可选参数0、1、2、3,代表以下四种模式: 0
(普通模式); 1 (PATHINFO 模式); 2 (REWRITE 模式); 3 (兼容模式) 默认为PATHINFO 模式

参考文档:TP官方文档

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/39737.html

相关文章

  • nginxthinkphpURL定向

    摘要:最近使用框架进行开发的时候遇到一个问题,把项目部署到上用当服务器的情况下,重定向出现问题,同样的后缀,在本地环境可以正常访问,在服务器上就出现了,但是使用的全路径是可以访问的。 最近使用thinkPHP框架进行开发的时候遇到一个问题,把项目部署到Linux上用nginx当服务器的情况下,URL重定向出现问题,同样的URL后缀,在本地环境可以正常访问,在服务器上就出现了404 ,但是使用...

    avwu 评论0 收藏0
  • Thinkphp定向redirect、和跳转success、error区别

    摘要:三个方法同时传入这个参数时候生成的地址会多个,导致访问出错,但是当使用伪静态时候却没有问题查看源代码跳转重定向支持指定模块和延时跳转跳转的表达式其它参数延时跳转的时间单位为秒跳转提示信息因为需要的是字符串不是函数生成的地址和则不同的是,他们 三个方法同时传入 U(MODULE_NAME . /Public/index) 这个URL参数时候 redirect生成的地址会多个index....

    xuweijian 评论0 收藏0
  • thinkphp源码分析(一)—开门篇

    摘要:源码分析开门篇生命周期入口文件用户发起的请求都会经过应用的入口文件,通常是文件。注册错误和异常机制执行注册错误和异常处理机制。由三部分组成应用关闭方法错误处理方法异常处理方法注册应用关闭方法是为了便于拦截一些系统错误。 源码分析—开门篇 thinkphp生命周期 1、入口文件 用户发起的请求都会经过应用的入口文件,通常是 ==public/index.php==文件。当然,你也可以更改...

    flybywind 评论0 收藏0
  • PHP处理WEB请求流程

    摘要:会依据协议,将请求的数据等信息发送给解析器,接下来解析器会解析文件,初始化执行环境,然后处理请求,再以规定的格式返回处理后的结果,退出进程。它的特点是会在动态分配处理进程给请求,以达到提高效率的目的,大多数实现都会维护一个进程池。 PHP作为世界上最好的编程语音,被广泛的运用到Web开发中。因为其语法和C类似,有着非常平缓的学习曲线,越来越多的人使用PHP进行Web产品的快速开发。PH...

    zhangrxiang 评论0 收藏0
  • Nginx部署HTTPS服务过程与异常处理实践

    摘要:当点击检查配置之后,如果阿里云能够正常访问,则会在左侧给出提示,现在可以返回证书列表,在列表中可以看到当前状态为审核中,如下图审核因为不需要人为干预,所以很快就能下发证书,笔者下发证书的时间大约是分钟左右。 一、背景 笔者所在团队需要开发ios的APP,而apptstore应用商店审核需要应用使用https,所以需要配置https证书,笔者将此次配置的过程与遇到的一些问题记录下来,方便...

    Scliang 评论0 收藏0

发表评论

0条评论

Zack

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<