Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

Rewrite 高难问题请教

[复制链接]
Sun_Y_Huang 发表于 2008-5-28 01:07:26 | 显示全部楼层 |阅读模式
Rewrite 能不能实现

访问http://www.x.com/username
目录重写到 /www/www.x.com/usersite/u/us/use/username

访问http://www.x.com/用户名称
目录重写到 /www/www.x.com/usersite/用/用户/用户名/用户名称

注意:http://www.x.com/username 后面有可能有"/"号,有可能没有"/"号
如:
http://www.x.com/username/blog  Rewrite TO /www/www.x.com/usersite/u/us/use/username/blog
http://www.x.com/username/blog/  Rewrite TO /www/www.x.com/usersite/u/us/use/username/blog

http://www.x.com/username/rss  Rewrite TO /www/www.x.com/usersite/u/us/use/username/rss
http://www.x.com/username/rss/  Rewrite TO /www/www.x.com/usersite/u/us/use/username/rss

以下是我的方法,不过还没有完善。
请求:
www.x.com/username/images/img.jpg时 img.jpg 存在的话重写成功。
如果img.jpg不存在会出现错误说找不到/usersite/u/us/use/username/images/
地址栏成了:www.x.com/usersite::u::us::use::username::images::img.jpg
  1. RewriteEngine On
  2. RewriteBase /
  3. # 对 http://www.x.com/username/*/.../ 下文件的处理
  4. RewriteCond %{SCRIPT_FILENAME} !-f
  5. RewriteCond %{SCRIPT_FILENAME} !-d
  6. RewriteRule ^([a-zA-Z0-9]{1})([a-zA-Z0-9]{1})([a-zA-Z0-9]{1})([a-zA-Z0-9]+)/(.*).[a-zA-Z]{2,4}$ $1::$1$2::$1$2$3::$1$2$3$4 [C]
  7. RewriteRule ^([a-zA-Z0-9]{1})::([a-zA-Z0-9]{2})::([a-zA-Z0-9]{3})::([a-zA-Z0-9]+)/(.*)(\.[a-zA-Z]{2,4})$ /UserSite/$1/$2/$3/$4/$5$6 [L]

  8. # 处理结尾"/"问题
  9. RewriteCond %{SCRIPT_FILENAME} !-f
  10. RewriteCond %{SCRIPT_FILENAME} !-d
  11. RewriteRule ^(.+[^/])$ $1/  [R]
  12. # 对 http://www.x.com/username/*/.../ 的目录处理
  13. RewriteCond %{SCRIPT_FILENAME} !-f
  14. RewriteCond %{SCRIPT_FILENAME} !-d
  15. RewriteRule ^([a-zA-Z0-9]{1})([a-zA-Z0-9]{1})([a-zA-Z0-9]{1})([a-zA-Z0-9]+)/(.*)$ $1::$1$2::$1$2$3::$1$2$3$4 [C]
  16. RewriteRule ^([a-zA-Z0-9]{1})::([a-zA-Z0-9]{2})::([a-zA-Z0-9]{3})::([a-zA-Z0-9]+)/(.*)$ /UserSite/$1/$2/$3/$4/$5/ [L]
复制代码


因为这个规则还不完善,特请教高手们请修正。

[ 本帖最后由 Sun_Y_Huang 于 2008-6-2 17:27 编辑 ]
t111111 发表于 2008-5-28 12:07:46 | 显示全部楼层
我也有这个问题
回复

使用道具 举报

 楼主| Sun_Y_Huang 发表于 2008-6-1 08:11:31 | 显示全部楼层
真的没有高手指教么??
回复

使用道具 举报

 楼主| Sun_Y_Huang 发表于 2008-6-2 17:12:20 | 显示全部楼层
4楼完全没有看明白我的意思..
回复

使用道具 举报

 楼主| Sun_Y_Huang 发表于 2008-6-4 02:03:22 | 显示全部楼层
顶上去..找高手..
回复

使用道具 举报

 楼主| Sun_Y_Huang 发表于 2008-6-25 04:19:09 | 显示全部楼层
这么多天了..还没有高手出现..
回复

使用道具 举报

ytmdgv 发表于 2008-6-25 09:56:05 | 显示全部楼层
帮顶一下,顺便学习一下!!看看高手怎么说
回复

使用道具 举报

hhyisw 发表于 2008-7-11 14:05:21 | 显示全部楼层
顶上去找答案
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-19 04:30 , Processed in 0.030176 second(s), 4 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表