首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏我的博客

    Nginx配置pathInfo

    .+\.php($|/) { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; include fcgi_pathinfo.conf fastcgi_param SCRIPT_NAME $real_script_name; fastcgi_param PATH_INFO $path_info; } } 其中fcgi_pathinfo.conf

    1.1K70发布于 2018-04-28
  • 来自专栏小狼的世界

    PHP中的PathInfo

    isset( $_SERVER['PATH_INFO'] ) ){     $pathinfo = 'default'; }else{     $pathinfo =  explode('/', $_SERVER ['PATH_INFO']); } if( is_array($pathinfo) AND ! empty($pathinfo)  ){     $page = $pathinfo[1]; }else{     $page = 'a.php'; } require "$page.php"; ? > 参考资料: 1、PHP Parse Pathinfo 2、CPAN PathInfo

    1.2K30发布于 2018-07-25
  • 来自专栏每个用户仅限创建一个专栏

    让nginx支持pathinfo

    nginx的高性能优势明显,自己又很喜欢pathinfo类型的url。 apache下mod_rewirte有很好的实现,nginx就捉鸡了。 网上有一些中文的文章教你怎么配置nginx来支持pathinfo(当然很多是互相抄袭的) 英文的相对少很多 这里贴下我的配置: 首先是location / 的块里面,对于不存在的请求文件名,全部转发给 -e $request_filename) { rewrite ^(.*)$ /index.php$1 last; break; } } 此外,还需要几行字来把pathinfo 提取出来,写在location ~ \.php$ 块里面,注意为了支持pathinfo 这个块匹配的正则需要改为 location ~ \.php($|/)   ,这是正则相关知识自行查阅 location 输出显示pathinfo信息被附加到好多个变量里面,有点乱,其实主要参考是request_uri和path_info,去别在于前者带有queryString参数,后者没有 ["DOCUMENT_URI"

    71740编辑于 2022-08-16
  • 来自专栏技术博文

    php pathinfo()的用法

    pathinfo — 返回文件路径的信息  mixed pathinfo ( string $path [, int $options = PATHINFO_DIRNAME | PATHINFO_BASENAME | PATHINFO_EXTENSION | PATHINFO_FILENAME ] ) pathinfo() 返回一个关联数组包含有 path的信息。 options 如果指定了,将会返回指定元素;它们包括:PATHINFO_DIRNAME,PATHINFO_BASENAME和 PATHINFO_EXTENSION 或 PATHINFO_FILENAME php $path_parts = pathinfo('/www/htdocs/inc/lib.inc.php'); echo $path_parts['dirname'], "\n"; echo $

    2K70发布于 2018-04-10
  • 来自专栏每个用户仅限创建一个专栏

    续:让nginx支持pathinfo

    续上一篇《让nginx支持pathinfo》 原文的配置在我本机(Win,Nginx1.2.4)还算可以,但是有一个bug,就是如果url里面包含trailing slash(最后的斜杠/)的话,PATH_INFO 折腾了很久之后还是有各种问题,其实很多PHP框架(如Yii、CI、ThinkPHP)、流行的应用系统(Wordpress、Joomla)等都支持另外一种兼容模式的pathinfo,就是通过其他方法获取path_info

    85030编辑于 2022-08-16
  • 来自专栏雨过天晴

    原 nginx的pathinfo配置

    前言:         首先,什么是pathinfo模式呢?          pathinfo是伪静态的一种,我们先解释一下伪静态的概念,伪静态页面是静态URL与动态URL互通的一个桥梁,它是指动态网址通过URL重写的手段去掉其动态参数,使URL静态化,但在实际的网页目录中并没有重写 apache服务器本身是支持pathinfo的,通过简单修改几项配置即可。 当配置支持pathinfo后,在php应用程序中,通过_SERVER['PATH_INFO']变量获取pathinfo值为/topic/detail/tid/82.html。 但是我们要说的nginx服务器默认是不支持pathinfo模式访问。

    1.2K40发布于 2018-06-04
  • 来自专栏小夜博客

    LNMP 1.x版本 pathinfo设置

    只要修改vhost下面的配置文件 enable-php.conf 为 enable-php-pathinfo.conf 再引用 typecho.conf 伪静态文件,完美解决。 1.enable-php.conf 文件,添加pathinfo2.conf引入 location ~ [^/]\.php(/|$) { try_files php-cgi.sock; fastcgi_index index.php; include fastcgi.conf; include pathinfo2 .conf; } 2.上传pathinfo2.conf文件(和原来默认版本不一样) set $real_script_name $fastcgi_script_name; if ($fastcgi_script_name

    1.1K80发布于 2018-05-16
  • 来自专栏同步博客

    制作类似ThinkPHP框架中的PATHINFO模式功能

    1、PATHINFO功能简述   搞PHP的都知道ThinkPHP是一个免费开源的轻量级PHP框架,虽说轻量但它的功能却很强大。   这也是我接触学习的第一个框架。 TP框架中的URL默认模式即是PathInfo模式。这个模式很强大,每当你访问一个网站必然带有一长串参数,但是太长又显得不太友好。 两者相比较很容易就得出结论:PathInfo模式下的访问路径显示更加友好! 然而在这篇文章中我所要讲述的就是如何搭建好这种友好的访问路径。 之前一直用ThinkPHP,感觉ThinkPHP中的URL中的默认模式PATHINFO很强大。所以就决定制作一个这样的功能用于自己的小框架的URL上啦。 好啦扯远啦,言归正传,我所制作的PATHINFO功能上和ThinkPHP是一致的,至于里面的深层原理效率问题什么的,是否和TP中的PATHINFO一样就不太清楚啦,毕竟还没有去研究TP原码,这里就按照我自己的思路来写

    1.4K30发布于 2018-08-22
  • 来自专栏后端技术探索

    nginx配置支持pathinfo模式的url访问(原创)

    首先,什么是pathinfo模式呢? apache服务器本身是支持pathinfo的,通过简单修改几项配置即可。 当配置支持pathinfo后,在php应用程序中,通过_SERVER['PATH_INFO']变量获取pathinfo值为/topic/detail/tid/82.html。 但是我们要说的nginx服务器默认是不支持pathinfo模式访问。 好了,终于到本文的正题了,nginx支持pathinfo的配置如下: 1.

    2.1K20发布于 2018-08-09
  • 来自专栏后端技术探索

    nginx配置支持pathinfo模式的url访问(原创)

    首先,什么是pathinfo模式呢? apache服务器本身是支持pathinfo的,通过简单修改几项配置即可。 当配置支持pathinfo后,在php应用程序中,通过_SERVER['PATH_INFO']变量获取pathinfo值为/topic/detail/tid/82.html。 但是我们要说的nginx服务器默认是不支持pathinfo模式访问。 好了,终于到本文的正题了,nginx支持pathinfo的配置如下: 1.

    2K10发布于 2018-08-09
  • 来自专栏全栈程序员必看

    NGINX.conf配置文件支持pathinfo

    发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/112491.html原文链接:https://javaforall.cn

    63810编辑于 2022-07-08
  • 来自专栏生如夏花绚烂

    Laravel 上传到lnmp环境不能用 您了解pathinfo

    在nginx下是不支持pathinfo的,但是apache支持pathinfopathinfo是什么? 首先我们在nginx的html目录下新键1.php文件,打印$_SERVER <? SERVER); 尝试在地址栏输入如下参数 结果返回404 同样的代码在apache下测试 没有报错 并且页面多了PATH_INFO的字段 值为 url地址后面的参数 a/b/c 这就是pathinfo fastcgi_param PATH_INFO $1; include fastcgi_params; } 通过正则反向引用将.php后面的参数传递给pathinfo 浏览器测试传入参数 1.php/a/b 页面生成PATH_INFO字段 此时解决Nginx不支持pathinfo的问题。

    61120编辑于 2022-09-08
  • 来自专栏PHP实战技术

    ThinkPHP->pathinfo模式(Linux下nginx的配置说明)

    小伙伴在使用ThinkPHP搭建自己或者公司项目的时候,url模式设置成为兼容模式,也就是URL_MODEL的值为3的时候是不是也遇到过Lnmp的环境不支持pathinfo模式,当然了PHP+Nginx 下面就教大家怎么讲我们的各种云服务器下lnmp的环境支持pathinfo,说到这里是不是有的小伙伴可能不太明白pathinfo模式是什么,下面小编就先给大家上个个小例子: www.xxx.com/index.php /Admin/Manager/Login 这样的url形式就是pathinfo的模式,这样的模式更加利于百度小蜘蛛的识别,也就是更加优于SEO。 在/usr/local/nginx/conf下创建pathinfo.conf(如果已经存在请先备份然后修改) fastcgi_split_path_info ^((? 命令:/root/lnmp restart 新版的重启命令为:lnmprestart 小伙伴按照上面的步骤一步一步的配置就可以了,希望这篇文章能帮助那些还在苦于linux下配置pathinfo的小伙伴

    1.8K100发布于 2018-02-08
  • 来自专栏PM吃瓜(公众号)

    Nginx兼容框架的pathinfo模式与URL重写

    几乎所有的框架(ThinkPHP,Zend Framework,CI,Yii,laravel等)都会使用URL重写或者pathinfo模式,使URL看起来更美观,比如可以隐藏掉入口文件,并且有利于搜索引擎优化 ,其实让Nginx支持pathinfo或者重写也不难,首先在php.ini中设置cgi.fix_pathinfo=1 再就是添加配置文件(新版nginx) 内容如下: #pathinfo 支持开始 以上配置信息根据实际情况配置 PATH_INFO $fastcgi_path_info; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; #pathinfo PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/"; #fastcgi相关参数结束 #pathinfo rewrite ^(.*)$ /index.php/$1 last; } } #重写模式结束 } 这样Nginx就支持pathinfo

    2.4K10发布于 2019-08-13
  • 来自专栏同步博客

    制作类似ThinkPHP框架中的PATHINFO模式功能(二)

      距离上一次发布的《制作类似ThinkPHP框架中的PATHINFO模式功能》(文章地址:http://www.cnblogs.com/phpstudy2015-6/p/6242700.html)已经过去好多天了 上一篇文章已经实现了PATHINFO模式的URL,即我们访问MVC模式搭建的站点时,只需要在域名后面加上(/module/controller/action)即可,很智能化。

    60050发布于 2018-08-22
  • windows版本 nginx 环境下thinkphp的pathinfo 访问出现404错误

    宝塔windows系统 thinkphp访问404 或其它php页面都是404  参考以下解决方案

    1.1K10编辑于 2024-04-11
  • 来自专栏陶士涵的菜地

    url的pathinfo模式加载不同控制器的实现

    使用自动加载和解析url的参数,实现调用到不同的控制器,实现了pathinfo模式和普通的url模式 文件结构: |--Controller   |--Index     |--Index.php |- =array_filter(explode("/", $_SERVER['PATH_INFO'])); for($i=1;$i<=count($pathinfo);$i++){ $key=isset($pathinfo[$i]) ? $pathinfo[$i] : ''; $value=isset($pathinfo[$i+1]) ? $pathinfo[$i+1] :""; switch ($i) { case 1:

    1K20发布于 2019-09-10
  • 来自专栏陶士涵的菜地

    命令行执行整合pathinfo模拟定时任务

    $v; } } } //pathinfo处理 public static function pathInfo(){ if( isset($_SERVER['PATH_INFO'])){ $pathinfo=array_filter(explode("/", $_SERVER['PATH_INFO']) ); for($i=1;$i<=count($pathinfo);$i++){ $key=isset($pathinfo[$i]) ? $pathinfo[$i] : ''; $value=isset($pathinfo[$i+1]) ? $pathinfo[$i+1] :""; switch ($i) { case 1:

    43910发布于 2019-09-10
  • 来自专栏PHP开发者那些事

    php处理pathinfo()方法获取中文文件名错误的方法

    即: substr(pathinfo("_{$file['name']}", PATHINFO_FILENAME), 1);

    2.2K10发布于 2020-06-23
  • 来自专栏我的知识小屋

    nginx 修改配置文件使之支持pathinfo,且隐藏index.php

    centos6.8 使用lnmp一键包搭建环境(2019年2月19日 ) 以前使用过别的办法去修改配置文件,但是过于繁琐,最近发现新版本中,在nginx 的 conf目录下发现了文件“enable-php-pathinfo.conf ”,随后发现另外一种及其简单让nginx支持pathinfo的修改办法。 找到 include enabled-php.conf 更换成 include enable-php-pathinfo.conf;即可 ?

    1.2K20发布于 2020-10-23
领券