• 技术文章 >后端开发 >PHP问题

    php如何实现页面路由转发

    coldplay.xixicoldplay.xixi2020-10-07 15:03:50原创1383

    php实现页面路由转发的方法:首先配置nginx服务器,在【.htaccess】中写上nginx的语法;然后打开根目录的【index.php】,编写文件路由即可。

    php实现页面路由转发的方法:

    1、配置nginx服务器

    nginx服务器不会自动读取.htaccess,也不支持.htaccess语法,这里需要做一个投机取巧的方法:在.htaccess中写上nginx的语法,同时把该文件引入到nginx的配置中。这样就达到了和apache同样的目的。编辑.htaccess文件,输入以下内容并保存

    if (!-e $request_filename){
        rewrite ^(.*)$ /index.php;
    }
    location ~ /.ht {
        deny  all;
    }

    【解释】nginx匹配失败的uri全都转给index.php,同时禁止访问.htaccess文件

    最重要的一步:在nginx配置中,在server{}内加入一句话:

    include E:/demo/.htaccess;

    【解释】将该文件原封不动的引入到nginx配置中。注意使用绝对路径!

    2、编写index.php路由

    打开根目录的index.php,输入以下内容

    <?php
        //路由
        $uri = $_SERVER['REQUEST_URI']; //获取uri,例如 http://www.abc.com/study,其uri="/study"
        switch($uri){
            case "/":      include "template/home.php";  break;
            case "/study": include "template/study.php"; break;
            case "/play":  include "template/play.php";  break;
        }
    编写/template/下的网页文件
    /template/下存放的网页文件,随便编辑点html用于测试。例如 home.php
    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="utf-8">
        <title>这里是home</title>
    </head>
    <body>
        <h1>你好,这里是home页面</h1>
    </body>
    </html>

    效果

    在浏览器访问http://localhost:8000 可以访问到/template/home.php

    在浏览器访问http://localhost:8000/study 可以访问到/template/study.php

    在浏览器访问http://localhost:8000/play 可以访问到/template/play.php

    相关免费学习推荐:php编程(视频)

    以上就是php如何实现页面路由转发的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:php 实现转发
    上一篇:php静态方法如何调用非静态变量 下一篇:php如何转换文件编码
    20期PHP线上班

    相关文章推荐

    精选22门好课,价值3725元,开通VIP免费学习!• 如何解决php doc 乱码问题• 如何解决php gzip 乱码问题• php如何进行字符串匹配替换• php for语句的用法是什么• php如何判断文件是不是图片
    1/1

    PHP中文网