Php htaccess使用mod_重写自定义url列表
我已使用.htaccess成功地使用自定义、干净的URL屏蔽URL,其样式为域顶级的子目录: normal.htaccess配置(工作) 给我: /页码/主题 /页面 现在,在为不同的PHP文件使用特定部署时,我想为所述部署创建子集目录,如所示: 所需的附加配置(不工作-抛出500个错误) 给我: /手机/页面/主题 /手机/网页Php htaccess使用mod_重写自定义url列表,php,apache,.htaccess,mod-rewrite,Php,Apache,.htaccess,Mod Rewrite,我已使用.htaccess成功地使用自定义、干净的URL屏蔽URL,其样式为域顶级的子目录: normal.htaccess配置(工作) 给我: /页码/主题 /页面 现在,在为不同的PHP文件使用特定部署时,我想为所述部署创建子集目录,如所示: 所需的附加配置(不工作-抛出500个错误) 给我: /手机/页面/主题 /手机/网页 我试着把[QSA,L]改成[NC,L],什么都没有。有什么想法吗?非常感谢您的帮助!:)提前感谢。此规则会导致无休止的循环: RewriteRule ^([^/]+)
我试着把[QSA,L]改成[NC,L],什么都没有。有什么想法吗?非常感谢您的帮助!:)提前感谢。此规则会导致无休止的循环:
RewriteRule ^([^/]+)$ /index.php?page=$1 [QSA]
你需要在他面前加上一些限制。
下面是您的重写调用堆栈:
附言。
没关系,我忘了创建了mobile.php,我得到了重写循环,很抱歉。这个规则会导致无休止的循环:
RewriteRule ^([^/]+)$ /index.php?page=$1 [QSA]
你需要在他面前加上一些限制。
下面是您的重写调用堆栈:
附言。
没关系,我忘了创建了mobile.php,我得到了重写循环,很抱歉。应该是
RewriteRule^([^/]+)mobile/…
?不是为我做的。。。我正在遵循我为提供图像而进行的另一次重写的逻辑:RewriteRule^images/([^/]+)/(.*)\(jpg | png | jpeg | gif)$/images/index.php?image=$2&res=$1&ext=$3[NC,L]
不应该是RewriteRule^([^/]+)mobile/…
?不应该为我这么做。。。我正在遵循我为提供图像而进行的另一次重写的逻辑:RewriteRule^images/([^/]+)/(.*)\(jpg | png | jpeg | gif)$/images/index.php?image=$2&res=$1&ext=$3[NC,L]
它就在那里:RewriteCond%{REQUEST\u FILENAME}-f RewriteRule^-[L]
,这已经起作用了。。。谢谢,tho!不可以。这个重写只适用于RewriteRule^-[L]。RewriteCond%{REQUEST_FILENAME}-f RewriteRule^-[L]RewriteRule^([^/]+)/([^/]+)$/index.php?page=$1&subject=$2[QSA]RewriteRule^([^/]+)$/index.php?page=$1[QSA,L]
这是有效的…我正在寻找一个有基本名称的不同类型的实例的答案,像“mobile”一样,请注意上面评论中的“L”。。。仍然不适用于“移动”实例,适用于顶级。。。如果我能得到一个明确的解决方案,那就太好了。“L”在这里没有任何意义,因为它是指向同一台服务器的内部重定向,指向同一个htaccess,它将继续,直到没有人重写规则为止。我更新了我的原始答案-查看重写调用堆栈-您将在这个规则中看到这个问题。它就在那里:RewriteCond%{REQUEST_FILENAME}-f RewriteRule^-[L]
,并且已经起作用了。。。谢谢,tho!不可以。这个重写只适用于RewriteRule^-[L]。RewriteCond%{REQUEST_FILENAME}-f RewriteRule^-[L]RewriteRule^([^/]+)/([^/]+)$/index.php?page=$1&subject=$2[QSA]RewriteRule^([^/]+)$/index.php?page=$1[QSA,L]
这是有效的…我正在寻找一个有基本名称的不同类型的实例的答案,像“mobile”一样,请注意上面评论中的“L”。。。仍然不适用于“移动”实例,适用于顶级。。。如果我能得到一个明确的解决方案,那就太好了。“L”在这里没有任何意义,因为它是指向同一台服务器的内部重定向,指向同一个htaccess,它将继续,直到没有人重写规则为止。我更新了我的原始答案-查看重写调用堆栈-您将在这个规则中看到这个问题。
RewriteRule ^([^/]+)$ /index.php?page=$1 [QSA]