【发布时间】:2014-08-17 23:25:16
【问题描述】:
这个 .htaccess 文件有问题
RewriteEngine On
RewriteBase /subdomain
#Make sure it's an actual file
RewriteCond %{REQUEST_FILENAME} -f [OR]
#Make sure its a directory
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
#Rewrite the request to index.php
RewriteRule ^([^/]+)/([^/]+)/?$ index.php?mode=$1&s=$2 [L,QSA]
#Rewrite the request to index.php
RewriteRule ^([^/]+)/?$ index.php?mode=$1 [L,QSA]
这个.htaccess 帮助我以http://domain.com/subdomain/page/ 访问这个url http://domain.com/subdomain/index.php?mode=page
现在我想以http://domain.com/subdomain/checkout/ 的身份访问此网址http://domain.com/subdomain/checkout.php 但这不能在线工作,但是当我在本地主机上测试时一切正常。
我可以对 .htaccess 进行任何更改来解决这个问题吗?任何帮助是极大的赞赏。提前谢谢你。
【问题讨论】:
-
如果您没有禁用
MultiViews选项,那么当您转到/subdomain/checkout时它应该可以工作(自动解析为checkout.php) -
我在 .htaccess 中发布了所有代码我应该如何验证
MultiViews状态? -
如果它不在您的 htaccess 中,它可能在 apache 配置中,但似乎问题来自其他地方。我认为
/subdomain/checkout/被重写为index.php?mode=checkout(最后一条规则) -
正是,这就是为什么我要问我是否应该在我的 .htaccess 文件中添加一些东西
标签: php apache .htaccess mod-rewrite redirect