欢迎来到 无奈人生 安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

Apache PHP开启伪静态

来源: 作者: 时间:2019-02-24 21:37 点击: 我要投稿
广告位API接口通信错误,查看德得广告获取帮助

 打开apache的配置文件httpd.conf

第一步:找到

#LoadModule rewrite_module modules/mod_rewrite.so

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

第二步:找到 

<Directory "F:/Apache_Workspace/PHP">
    #
    # 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>

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

第三步:重启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'] 来接收

$1 代表浏览器路径中输入的第一个正则表达式的值,以此类推

$2代表第二个正则表达式的值

RewriteRule 路由转向规则里正则表达式用括号 () 括起来 

第四步:在项目(test)下 index.php 页面内写入内容 

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

if ($_GET ['action']) {
    echo "action : " . $_GET ['action'];
}

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

在浏览器中输入

http://localhost/test/index.html

http://localhost/test/index-99.html

http://localhost/test/page-18.html

都会转向 http://localhost/test/index.php 页面并且依次

http://localhost/test/index.html     页面什么都不显示

http://localhost/test/index-99.html  页面显示 p : 99

http://localhost/test/page-18.html   页面显示 action : pageid : 18

 打开apache的配置文件httpd.conf 本文来自无奈人生安全网

第一步:找到 copyright 无奈人生

#LoadModule rewrite_module modules/mod_rewrite.so 本文来自无奈人生安全网 

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

www.wnhack.com

第二步:找到  copyright 无奈人生

<Directory "F:/Apache_Workspace/PHP">
    #
    # 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> copyright 无奈人生 

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

www.wnhack.com

第三步:重启apache服务器

copyright 无奈人生

在要启用伪静态的 PHP 项目根目录下建立 .htaccess 文件 copyright 无奈人生

在 .htaccess 文件中输入内容  www.wnhack.com

<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'] 来接收

无奈人生安全网

$1 代表浏览器路径中输入的第一个正则表达式的值,以此类推 www.wnhack.com

$2代表第二个正则表达式的值

本文来自无奈人生安全网

RewriteRule 路由转向规则里正则表达式用括号 () 括起来  无奈人生安全网

第四步:在项目(test)下 index.php 页面内写入内容 

无奈人生安全网

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

if ($_GET ['action']) {
    echo "action : " . $_GET ['action'];
}

if ($_GET ['id']) {
    echo "id : " . $_GET ['id'];
}
?> 
无奈人生安全网

在浏览器中输入

无奈人生安全网

http://localhost/test/index.html

内容来自无奈安全网

http://localhost/test/index-99.html

无奈人生安全网

http://localhost/test/page-18.html 无奈人生安全网

都会转向 http://localhost/test/index.php 页面并且依次 copyright 无奈人生

http://localhost/test/index.html     页面什么都不显示

无奈人生安全网

www.wnhack.com

http://localhost/test/index-99.html  页面显示 p : 99 无奈人生安全网

本文来自无奈人生安全网

http://localhost/test/page-18.html   页面显示 action : pageid : 18 无奈人生安全网

copyright 无奈人生

。 (责任编辑:admin)
【声明】:无奈人生安全网(http://www.wnhack.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱472701013@qq.com,我们会在最短的时间内进行处理。