• 技术文章 >后端开发 >php教程

    php网站启用伪静态的方法

    王林王林2019-10-22 17:28:16原创8128

    PHP网站开启伪静态的步骤

    1、打开apache的配置文件httpd.conf找到

    #LoadModule rewrite_module modules/mod_rewrite.so

    把前面#去掉。没有则添加,但必选独占一行,使apache支持 mod_rewrite 模块,找到

    <Directory "D:/ApacheServer/web">
        #
        # Possible values for the Options directive are "None", "All",
        # or any combination of:
        #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
        #
        # Note that "MultiViews" must be named *explicitly* --- "Options All"
        # doesn't give it to you.
        #
        # The Options directive is both complicated and important.  Please see
        # http://httpd.apache.org/docs/2.2/mod/core.html#options
        # for more information.
        #
        Options Indexes FollowSymLinks
    
        #
        # AllowOverride controls what directives may be placed in .htaccess files.
        # It can be "All", "None", or any combination of the keywords:
        #   Options FileInfo AuthConfig Limit
        #
        AllowOverride None
    
        #
        # Controls who can get stuff from this server.
        #
        Order allow,deny
        Allow from all
    
    </Directory>

    3、把AllowOverride None换成AllowOverride All使apache支持.htaccess文件

    4、重启apache服务器

    在要启用伪静态的 PHP 项目根目录下建立 .htaccess 文件,在 .htaccess 文件中输入内容

    <IfModule mod_rewrite.c>
       RewriteEngine on
       RewriteRule index.html$ index.php
       RewriteRule index-([1-9]+[0-9]*).html$ index.php?p=$1
       RewriteRule ([a-z]{1,})-([0-9]{1,}).html$ index.php?action=$1&id=$2</IfModule>

    注释:

    RewriteEngine 为重写引擎开关,on为开启,off为关闭。

    RewriteRule 是路由转向规则,之前路径为浏览器中要输入路径,这里可以用正则表达式表达。之前路径为浏览器中要输入路径,这里可以用正则表达式表达。+空格 后路径为后台实际转向路径, 转向后台实际路径时可以传参数。

    例子里的后台页面可以用GET[′p′]GET[′p′]_GET[‘action’] GET[‘id′]来接收GET[‘id′]来接收1 代表浏览器路径中输入的第一个正则表达式的值,以此类推,$2代表第二个正则表达式的值 RewriteRule 路由转向规则里正则表达式用括号 () 括起来。

    在项目下 index.php 页面内写入内容

    <?php
    if ($_GET ['p']) {
        echo "p : " . $_GET ['p'];
    }
    
    if ($_GET ['action']) {
        echo "action : " . $_GET ['action'];
    }
    
    if ($_GET ['id']) {
        echo "id : " . $_GET ['id'];
    }
    ?>

    推荐教程:PHP视频教程

    以上就是php网站启用伪静态的方法的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:php 网站 伪静态
    上一篇:php与java开发语言的明显区别 下一篇:php关闭错误提示
    千万级数据并发解决方案

    相关文章推荐

    • php如何做伪静态处理• php伪静态怎么开发• php伪静态验证码不显示怎么解决• 伪静态和静态的区别
    1/1

    PHP中文网