当前位置:编程学习 > C#/ASP.NET >>

===请教一个httpd.ini的RewriteRule问题=====

我要把/index.aspx?uid=bluesky转成伪静态:/bluesky/index.html。
      /article_content.aspx?uid=bluesky&id=102转成伪静态:/bluesky/102/article_content.html

我写的代码如下:


[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
#将 RewriteEngine 模式打开

RewriteEngine On
# 修改以下语句中的 /discuz 为你的论坛目录地址,如果程序放在根目录中,请将 /discuz 修改为 /
RewriteBase /
# Protect httpd.ini and httpd.parse.errors files
# from accessing through HTTP
RewriteRule ^(.*)/index.html$  /index.aspx?uid=$1
RewriteRule ^(.*)/(.*)/article_content.html  /article_content.aspx?uid=$1&id=$2


可是就是不起作用,请问为什么?谢谢! --------------------编程问答-------------------- 顶上去 --------------------编程问答-------------------- 再顶 --------------------编程问答--------------------

配置都做好了吗,比如在"ISAPI筛选器"中 添加ISAPI_Rewrite.dll了吗,并变成绿色的向上箭头了吗(说明启用) --------------------编程问答-------------------- 用第三方的不太好,还要配置IIS ,可以用urlrewrite.dll来实现地址重写 --------------------编程问答-------------------- 谢谢楼上,这些都配置了。

/index.aspx 转成伪静态/index.html
RewriteRule ^(.*)/index.html$  /index.aspx
这样是可以的,但是带上参数不知道就不行了 --------------------编程问答-------------------- 顶 --------------------编程问答-------------------- 带上参数,重写规则也就变了

如:

RewriteRule /aa/(\d+)_(\d+)\.html  /aa\.aspx\?id=$1


也就是当 aa.aspx?id=1 时就映射为  /aa/1_1.html

--------------------编程问答-------------------- [ISAPI_Rewrite] 
# 3600 = 1 hour 
CacheClockRate 3600 
RepeatLimit 32 
#将 RewriteEngine 模式打开 

RewriteEngine On 
# 修改以下语句中的 /discuz 为你的论坛目录地址,如果程序放在根目录中,请将 /discuz 修改为 / 
RewriteBase / 
# Protect httpd.ini and httpd.parse.errors files 
# from accessing through HTTP 
RewriteRule /(\d+)/index\.html  /index\.aspx\?uid=$1 


为什么这样还不行呢? --------------------编程问答-------------------- 顶上去 --------------------编程问答-------------------- 周末人少啊 --------------------编程问答-------------------- ^(.*)/(.+?)/index\.html$ /index.aspx?uid=$1
^(.*)/(.+?)/(\d+)/article_content.html$  /article_content.aspx?uid=$1&id=$2 --------------------编程问答-------------------- 感谢楼上,还是不行啊

[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
#将 RewriteEngine 模式打开

RewriteEngine On
# 修改以下语句中的 /discuz 为你的论坛目录地址,如果程序放在根目录中,请将 /discuz 修改为 /
RewriteBase /
# Protect httpd.ini and httpd.parse.errors files
# from accessing through HTTP
RewriteRule ^(.*)/(.+?)/index\.html$ /index.aspx?uid=$1 
RewriteRule ^(.*)/(.+?)/(\d+)/article_content.html$  /article_content.aspx?uid=$1&id=$2 --------------------编程问答-------------------- ^(.*)/(.+?)/index\.html$ /index.aspx?uid=$2 
^(.*)/(.+?)/(\d+)/article_content.html$  /article_content.aspx?uid=$2&id=$3

这样应该可以了吧。。。 --------------------编程问答-------------------- 还是不行,谢谢 --------------------编程问答-------------------- --------------------编程问答-------------------- 有人知道吗 --------------------编程问答-------------------- 今晚再问 --------------------编程问答-------------------- 还有朋友回答吗
补充:.NET技术 ,  ASP.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,