搜索
查看: 1925|回复: 0

Apache 开启伪静态模块

[复制链接]

599

主题

877

帖子

2238

积分

管理员

本论坛第一帅

Rank: 9Rank: 9Rank: 9

积分
2238

热心会员推广达人宣传达人突出贡献优秀版主荣誉管理论坛元老

QQ
发表于 2018-6-22 10:34:13 | 显示全部楼层 |阅读模式

1.在 Apache 配置中启用 Rewrite,打开配置文件 httpd.conf,

若无法找到此文件,可使用 find / -name httpd.conf

如下图所示:

注意:本文搜索的httpd.conf的路径是 /etc/httpd/conf/httpd.conf 文件,此文对此进行说明。

找到 # LoadModule rewrite_module modules/mod_rewrite.so 去除前面的 #,开启伪静态模块。

注意:Linux 中 # 代表注释信息

修改前:

# LoadModule rewrite_module modules/mod_rewrite.so

修改后:

LoadModule rewrite_module modules/mod_rewrite.so

2.启用 .htaccess
在系统配置项中找到 Apache 的配置文件 /etc/httpd/conf/httpd.conf

将 AllowOverride None    修改为: AllowOverride All(对于配置文件,建议在修改前做下备份)

PHP如何实现网址伪静态


Apache的 mod_rewrite是比较强大的,在进行网站建设时,可以通过这个模块来实现伪静态。

主要步骤如下: 1.检测Apache是否开启mod_rewrite功能     可以通过php提供的phpinfo()函数查看环境配置,找到“Loaded Modules”,其中列出了所有apache2handler已经开启的模块,如果里面包括“mod_rewrite”,则已经支持,不再需要继续设置。如果没有开启“mod_rewrite”,则打开目录 apache目录下的“/apache/conf/” ,找到 httpd.conf 文件,再找到“LoadModule rewrite_module”,将前面的”#”号删除即表示取用该功能。    如果没有查找到“LoadModule” 区域,可以在最后一行加入“LoadModule rewrite_module ,modules/mod_rewrite.so”(独占一行),之后重启apache服务器。再通过phpinfo()函数查看环境配置就有“mod_rewrite”为项了.。

2.让apache服务器支持.htaccess    如何让自己的本地APACHE服务器支持:“htaccess”呢? 只需修改apache的httpd.conf设置就可以让 APACHE支持“.htaccess”了。打开 APACHE目录的CONF目录下的httpd.conf文件,找到: Options FollowSymLinks AllowOverride None 改为 Options FollowSymLinks AllowOverride All 就行了。

3.建立.htaccess 文件    建立.htaccess文件时要注意,不能直接建,方法是通过记事本中的另存为菜单,在文件名窗口输入:“.htaccess”,然后点击保存。

4.rewrite规则学习    在新建.htaccess文件之后,就在里面写入以下内容: RewriteEngine on #rewriteengine为重写引擎开关on为开启off为关闭 RewriteRule ([0-9]{1,})$index.php?id=$1 在这里,RewriteRule是重写规则,是用正则表达式的句子,([0-9]{1,})表示由数字组成的,$表示结束标志,表示以数字结束!如果要实现伪静态页面,规则如下: RewriteEngine on RewriteRule ([a-zA-Z]{1,})-([0-9]{1,}).html$index.php?action=$1&id=$2 在为个正则表达式中,([a-zA-Z]{1,})-([0-9]{1,}).html$是规则,index.php?action=$1&id=$2是要替换的格式,$1代表第1括号匹配的值,$2代表第二个括号的值,如此类推! 测试PHP脚本如下: index.php文件中的代码如下: echo ‘你的Action值为:’ . $_GET['action']; echo ‘ ’; echo ‘ID值为:’ . $_GET['id']; ?>

在浏览器地址栏输入: localhost/page-18.html 输出的是: 你的Action值为:page ID值为:18

  呵呵,改写成功


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
有志者,事竟成,破釜沉舟,百二秦关终属楚. 苦心人,天不负, 卧薪尝胆 ,三千越甲可吞吴
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

温馨提示
1:发帖请遵守《中华人民共和国网络安全法》,发帖内容不得维护国家的、集体的、个人的利益。
2:请勿发布恶意攻击他人的技术文章、工具、和使用教程,发现后删帖处理。
3:本站的目的在于让更多的人了解网络安全,避免受到他人的恶意攻击。
4:本站中的部分文章,可能会出现一些“技术类手段”,但这仅仅为学习演示所用,而非恶意传播技术。
5:本站中的部分文章,可能转载自互联网。如有侵权行为,联系我们删除即可。
6:学习仅是充实头脑,切勿恶意攻击个人、企业等。所造成的法律后果一切由自己承担,本站及其站长概不负责。
朕知道了
快速回复 返回顶部 返回列表