学习Apache的mod rewrite、access写法

Apache 的 mod rewrite
RewriteEngine On RewriteBase /B2B/website/ RewriteRule ^article-([0-9]+)\.html$ view_details.php?browse=profile&id=$1
以上这个测试通过的。如果不行关键是服务器端,以后的怎么改就发挥了
关于图片的 可以加一个 /503(id)/title.htm 这样一定不重复了,用503或其他数字或者是abc也行,不顾oabc还想不是很理想,学学ii的,他就是用数字的定义所有的功能就行了

这个很有参考价值的
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)/archiver/((fid|tid)-[\w\-]+\.html)$ $1/archiver/index.php?$2
RewriteRule ^(.*)/forum-([0-9]+)-([0-9]+)\.html$ $1/forumdisplay.php?fid=$2&page=$3
RewriteRule ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ $1/viewthread.php?tid=$2&extra=page\%3D$4&page=$3
RewriteRule ^(.*)/space-(username|uid)-(.+)\.html$ $1/space.php?$2=$3
RewriteRule ^(.*)/tag-(.+)\.html$ $1/tag.php?name=$2
</IfModule>
discuz的
最强wordpress的
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
关键看看 %怎么用了 还有 [...]

(0)

相关推荐

  • Apache rewrite重写规则的常见应用

    一.为什么需要用重写规则 ---- 网站的生命在于不断地进行更新和维护,根据业务发展的需求转移服务器进行维护.重新组织目录结构.变换URL甚至改变到新的域名等情况是经常发生的.为了让客户不会因此受到任何影响,最好的方法就是使用Apache Rewrite Rule(重写规则). 二.重写规则的作用范围 ---- 1.使用在Apache主配置文件httpd.conf中. ---- 2.使用在httpd.conf里定义的配置中. ---- 3.使用在基本目录的跨越配置文件.htaccess中. 三.

  • Apache Rewrite实现URL的301跳转和域名跳转

    如果要想用到rewrite模块,必须先安装或加载rewrite模块.方法有两种一种是编译apache的时候就直接安装rewrite模块,别一种是编译apache时以DSO模式安装apache,然后再利用源码和apxs来安装rewrite模块. 基于服务器级的(httpd.conf)有两种方法,一种是在httpd.conf的全局下直接利用RewriteEngine on来打开rewrite功能;另一种是在局部里利用RewriteEngine on来打开rewrite功能,下面将会举例说明,需要注意

  • apache的rewrite规则使用说明

    rewrite标志R[=code](force redirect) 强制外部重定向 强制在替代字符串加上http://thishost[:thisport]/前缀重定向到外部的URL.如果code不指定,将用缺省的302 HTTP状态码.F(force URL to be forbidden)禁用URL,返回403HTTP状态码.G(force URL to be gone) 强制URL为GONE,返回410HTTP状态码.P(force proxy) 强制使用代理转发.L(last rule)

  • 浅谈apache和nginx的rewrite的区别

    1. Nginx Rewrite规则相关指令 Nginx Rewrite规则相关指令有if.rewrite.set.return.break等,其中rewrite是最关键的指令.一个简单的Nginx Rewrite规则语法如下: rewrite ^/b/(.*)\.html /play.php?video=$1 break; 如果加上if语句,示例如下: if (!-f $request_filename) { rewrite ^/img/(.*)$ /site/$host/images/$1

  • apache rewrite_module模块使用教程

    把 [url]http://wwww.aaaaaaaaa.com/bbb.php?id=888[/url] 的地址形式改为 [url]http://wwww.aaaaaaaaa.com/888.htm[/url] 或者 [url]http://wwww.aaaaaaaaa.com/yourname/888.htm[/url] 当然可以按照你的要求随便变. APACHE的 MOD_rewrite模块. 大家可以看一个演示的一个 PHP学习论坛 [url]http://www.phpx.com/ha

  • 让Apache支持Rewrite静态页面重写的方法

    首先确定您使用的 Apache 版本,及是否加载了 mod_rewrite 模块. Apache 1.x 的用户请检查 conf/httpd.conf 中是否存在如下两段代码: LoadModule rewrite_module libexec/mod_rewrite.so AddModule mod_rewrite.c Apache 2.x 的用户请检查 conf/httpd.conf 中是否存在如下一段代码: LoadModule rewrite_module modules/mod_rew

  • 13个实用的Apache Rewrite重写规则

    1.去掉域名中的www标记 复制代码 代码如下: RewriteCond %{HTTP_HOST} !^jb51\.net$ [NC]RewriteRule .? http://jb51.net%{REQUEST_URI} [R=301,L] 2.去掉www标记,但是保存子域名 复制代码 代码如下: RewriteCond %{HTTP_HOST} ^www\.(([a-z0-9_]+\.)?jb51\.net)$ [NC]RewriteRule .? http://%1%{REQUEST_UR

  • 用ISAPI_Rewrite让IIS也支持如Apache下.htaccess的URL重写

    前些日子用Linux做服务器写了一些东西,发现Apache下的.htaccess真是个好东西!不仅能实现URL真重写,还能实现假重写.真重写可以有效降低代码量与服务器资源消耗量,伪重写可以有效减少服务器的静态文件体积,节约了空间,真是不错!其实htaccess的功能远不只如此. 言归正传,那么IIS下能不能也实现htaccess这样激动人心的功能呢?ASP.NET2.0这个东东不是服务器级的,不能胜任重写这个重任,那么只有交给ISAPI了,在网上搜索,还居然真有公司(组织)开发了这种东东!不可思

  • Apache rewrite的重写相关的参数说明

    Apache mod_rewrite规则重写的标志一览 R[=code](force redirect) 强制外部重定向 强制在替代字符串加上http://thishost[:thisport]/前缀重定向到外部的URL.如果code不指定,将用缺省的302 HTTP状态码. F(force URL to be forbidden)禁用URL,返回403HTTP状态码. G(force URL to be gone) 强制URL为GONE,返回410HTTP状态码. P(force proxy)

  • Apache Rewrite url重定向功能的简单配置

    1.Apache Rewrite的主要功能 就是实现URL的跳转和隐藏真实地址,基于Perl语言的正则表达式规范.平时帮助我们实现拟静态,拟目录,域名跳转,防止盗链等 2.Apache Rewrite的配置 Apache下的Rewrite配置主要有两种,一种是针对整个apache服务器的配置,此种配置的Rewrite规则是直接在httpd.conf下书写.配置步骤如下: (1)去除httpd.conf文件中"#LoadModule rewrite_module modules/mod_rewri

  • apache rewrite规则实现白名单

    需求: 六个文件的入口,其他都重定向到index 自己的思路: 正则找出不是六个文件的URL的模式,进行过滤. 对比同事的结果,自己思路的问题: 1. 想找出所有不符合规则的,越想越多,无法下手.----------------   思路错误,应该 制定白名单, 2. 概念错误, 弄错 REQUEST_URI 和 REQUEST_STRING 的概念   基础知识不牢固. 最后结果: 复制代码 代码如下: <IfModule mod_rewrite.c> RewriteEngine on Re

  • 开启Apache mod_rewrite模块示例代码

    启用mod_rewrite模块 在conf目录的httpd.conf文件中找到 LoadModule rewrite_module modules/mod_rewrite.so 将这一行前面的#去掉. 2.在要支持url rewirte的目录启用 Options FollowSymLinks和AllowOverride All Alias /php "c:/web/php/" 复制代码 代码如下: <Directory "c:/web/php/"> Op

随机推荐