zoukankan      html  css  js  c++  java
  • URL重写是实现PHP伪静态

    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了
    
  • 相关阅读:
    [LOJ537] DNA 序列
    yum安装jdk
    centos7添加tomcat自启服务
    ajax下载文件的方法 php下载图片的方法
    kali linux dpkg安装和删除的方法
    javascript 曲线流光动画
    javascript获取曲线路径每个像素的坐标
    抓取微信小程序源码的方法
    javascript canvas拖尾效果
    php错误execution timed out (118.236064 sec), terminating解决方法
  • 原文地址:https://www.cnblogs.com/hnbiao/p/4800041.html
Copyright © 2011-2022 走看看