• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

URL重写是实现PHP伪静态

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
URL重写是实现PHP伪静态
应该这样说才是,URL重写是实现PHP伪静态的方式之一,
具体如:
http://www.plframe.com/?x=1&y=2&z=3
换成
http://www.plframe.com/1-2-3.html
这种伪静态方式访问的话,其他最简单的方法是在网站根目录下面建一个.htaccess 文件,其内容如下:
     <IfModule mod_rewrite.c>
        RewriteEngine on
        RewriteRule /([\d]+)-([\d]+)-([\d]+)\.html /?x=$1&y=$2&z=$3   
    </IfModule>
   
    最后再APACHE的虚拟域名配置文件里面找到项目所用的域名设置项<VirtualHost></VirtualHost>,
    在其中再找到<Directory></Directory>,将AllowOverride None 改成 AllowOverride All,
    若没有<Directory></Directory>,则增加如下内容
    <Directory 目录路径>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
        DirectoryIndex index.php
    </Directory> 在<VirtualHost></VirtualHost>中间重启APACHE即可.

 

 

 

你规则前面的 ^([0-9]*)-[a-zA-Z0-9&\-\+\.\_'"]*/ 是正表达式,这里面用()括起来的东西,在后面依次使用$1、$2来引用,叫做匹配项。

在你的这个例子中,$1对于的就是([0-9]*),就是前面的所有数字

 

RewriteRule ^id/([0-9]+)$ article.php?id=$1

前面的 你自己可以随便搞

下面是我站的 /还有提醒一下!@linux  下的 规则有所不同

RewriteEngine On
RewriteBase /
RewriteRule ^type/(.*)/order/([0-9]+)$ index_c.php?type=$1&order=$2
RewriteRule ^type/(.*)/order/([0-9]+)/page/([0-9]+)$ index_c.php?type=$1&order=$2&page=$3

RewriteRule ^user/([0-9]+)$ index_c.php?uid=$1

RewriteRule ^user/([0-9]+)/type/(.*)/page/([0-9]+)$ index_c.php?uid=$1&type=$2&page=$3
RewriteRule ^user/([0-9]+)/type/(.*)$ index_c.php?uid=$1&type=$2

RewriteRule ^user/([0-9]+)/myclick/(.*)/page/([0-9]+)$ index_c.php?uid=$1&myclick=$2&page=$3
RewriteRule ^user/([0-9]+)/myclick/(.*)$ index_c.php?uid=$1&myclick=$2
RewriteRule ^user/([0-9]+)/page/([0-9]+)$ index_c.php?uid=$1&page=$2

RewriteRule ^re1d-([0-9]+)$ /top.php?itemid=$1
RewriteRule ^s=(.*)$ /search.php?s=$1

RewriteRule ^type/(.*)/page/([0-9]+)$ index_c.php?type=$1&page=$2
RewriteRule ^type/(.*)$ index_c.php?type=$1 [L]

 

 

 

 

现在的搜索引擎越来越对静态页面友好,以前不知道自己的服务器支不支持静态化,今天向空间商咨询后发现,其实自己的服务器是支持静态化的,于是在DZ论坛上下来个.htaccess文件修改

了其中的一个代码,上传到我的linux服务器,到Discuz!论坛后台选择静态化选项,前台打开一看,呵呵 已经显示静态化了

下面是修改的.htaccess文件文件内容

 # 将 RewriteEngine 模式打开
 RewriteEngine On

 # 修改以下语句中的 /discuz 为你的论坛目录地址,如果程序放在根目录中,请将 /discuz 修改为 /
 RewriteBase /

 # Rewrite 系统规则请勿修改
 RewriteRule ^archiver/((fid|tid)-[\w\-]+\.html)$ archiver/index.php?$1
 RewriteRule ^forum-([0-9]+)-([0-9]+)\.html$ forumdisplay.php?fid=$1&page=$2
 RewriteRule ^thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ viewthread.php?tid=$1&extra=page\%3D$3&page=$2
 RewriteRule ^space-(username|uid)-(.+)\.html$ space.php?$1=$2
 RewriteRule ^tag-(.+)\.html$ tag.php?name=$1
如果你有需要将这段代码保存为.htaccess文件上传到空间即可,再到后台更改选择静态化就OK了

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
[php-src]Php扩展的多文件编译发布时间:2022-07-10
下一篇:
php汉字排序发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap