首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >.htaccess RewriteRule域名.com/page/page到域名.com?p=page/page

.htaccess RewriteRule域名.com/page/page到域名.com?p=page/page
EN

Stack Overflow用户
提问于 2011-07-05 07:06:07
回答 2查看 736关注 0票数 0

我正在尝试设置我的.htaccess文件。我该如何获得这样的结果:

请求:domain.com/page/page

重写到:domain.com/index.php?p=page/page

我试过了:

代码语言:javascript
复制
RewriteRule ^(.*)$ index.php?p=$1 [L,QSA]

不走运。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-07-07 02:27:04

好吧,我算出来了。我需要两条规则:

代码语言:javascript
复制
RewriteRule ^([a-zA-Z0-9_\\s-]+)(/)?$ index.php?p=$1
RewriteRule ^([a-zA-Z0-9_\\s-]+)/([a-zA-Z0-9_\\s-]+)(/)?$ index.php?p=$1/$2

我的php脚本不喜欢它,因为

代码语言:javascript
复制
RewriteRule ^([a-zA-Z0-9_\\s-]+)(/)?$ index.php?p=$1

domain.com/no1/会转换为domain.com/index.php吗?p=no1/<-我不理解末尾斜杠

这个解决方案的唯一问题是它只有两个虚拟目录深度,但这就是我所需要的,它是好的。这是我第一次使用.htaccess,所以我很抱歉我缺乏理解。

票数 1
EN

Stack Overflow用户

发布于 2011-07-05 07:56:38

在您的.htaccess文件中尝试以下代码:

代码语言:javascript
复制
Options +FollowSymlinks -MultiViews
RewriteEngine On

RewriteRule ^(?!index\.php)(.*)$ /index.php?p=$1 [L,NC,QSA]

负向先行将避免这里的无限循环。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6576731

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档