.htaccess apache2重写规则(mod_rewrite)存在问题
我对mod_重写和apache2有问题。我想这样做: domain.com/{username}/{everything\u else}到domain.com/users/{username}/{everything\u else} {username}是第一个“/”之前的所有内容,{everything_else}是第一个“/”simbol之后的所有内容(可能包含其他“/”,确切数字各不相同) 我尝试了以下方法,但没有成功: 重写规则^(.*)/(.*)$/users/$1/$2[L,NC] 重写规则^([^/]+)/(.*)$/users/$1/$2[L,NC] 只有当{everything_else}不包含其他斜杠时,这才有效 重写规则^([^/]+)/([^/]*)用户/$1/$2[L,NC] 有可能做出这样的东西吗?试试看:.htaccess apache2重写规则(mod_rewrite)存在问题,.htaccess,mod-rewrite,apache2,.htaccess,Mod Rewrite,Apache2,我对mod_重写和apache2有问题。我想这样做: domain.com/{username}/{everything\u else}到domain.com/users/{username}/{everything\u else} {username}是第一个“/”之前的所有内容,{everything_else}是第一个“/”simbol之后的所有内容(可能包含其他“/”,确切数字各不相同) 我尝试了以下方法,但没有成功: 重写规则^(.*)/(.*)$/users/$1/$2[L,NC]
RewriteRule ^(.+?)/(.*)$ /users/$1/$2
那个?在第一个捕获组中,意味着:捕获尽可能少的字符(直到第一个/)。其余部分按原样捕获。尝试一下:
RewriteRule ^(.+?)/(.*)$ /users/$1/$2
那个?在第一个捕获组中,意味着:捕获尽可能少的字符(直到第一个/)。其余部分按原样捕获。谢谢您的建议!我尝试了此操作,但收到了以下错误消息:“由于可能的配置错误,请求超出了10个内部重定向的限制。如有必要,请使用'LimitInternalRecursion'增加限制。使用'LogLevel debug'获取回溯”。可能问题是,由于无限循环,因为文件夹“用户”匹配规则,在第一次重定向后再次开始循环。。有没有办法将以/users/*开头的请求从循环中排除?谢谢您的建议!我尝试了此操作,但收到了以下错误消息:“由于可能的配置错误,请求超出了10个内部重定向的限制。如有必要,请使用'LimitInternalRecursion'增加限制。使用'LogLevel debug'获取回溯”。可能问题是,由于无限循环,因为文件夹“用户”匹配规则,在第一次重定向后再次开始循环。。有没有办法将以/users/*开头的请求从循环中排除?