首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >.htaccess mod_rewrite刚刚破坏了网站

.htaccess mod_rewrite刚刚破坏了网站
EN

Stack Overflow用户
提问于 2010-03-11 02:19:49
回答 3查看 163关注 0票数 0

在下面的.htaccess文件中...

代码语言:javascript
复制
RewriteEngine on
RewriteCond %{HTTP_HOST} ^getpearson.com$
RewriteRule ^/?$ "http\:\/\/www\.getpearson\.com" [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php

RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ - [L]
RewriteRule ^redesign_03012010/mock-up/([^/]+)/([^/]+)$ /redesign_03012010/mock-up/index.php?page=$1§ion=$2 [PT]
RewriteRule ^redesign_03012010/mock-up/([^/]+)$ /redesign_03012010/mock-up/index.php?page=$1 [PT]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/([^/]+)$ /index.php?test=1&page=$1§ion=$2
RewriteRule ^([^/]+)$ /index.php?test=1&page=$1 [L]

我从以下代码中删除了最后3行修改的代码:

代码语言:javascript
复制
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/([^/]+)$ /index.php?test=1&page=$1§ion=$2
RewriteRule ^([^/]+)$ /index.php?test=1&page=$1 [L]

至:

代码语言:javascript
复制
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/([^/]+)$ /index.php?page=$1§ion=$2
RewriteRule ^([^/]+)$ /index.php?page=$1 [L]

...hence只删除了'test=1&‘url变量,现在它没有错误...这种疯狂的htaccess术语的逻辑是什么?这把我难倒了。无论如何,我做了一个php工作,直到我可以解决这个问题,所以不用担心,但请帮帮忙!谢谢!

EN

回答 3

Stack Overflow用户

发布于 2010-03-11 02:24:50

“没有狼人”有点含糊...您对规则所做的编辑似乎没有问题。也许测试页面期望出现“index.php”变量,如果没有就会崩溃?

尝试将"test=1“改为"test=0”,而不是从查询字符串中删除"test“变量。

票数 2
EN

Stack Overflow用户

发布于 2010-03-09 22:58:08

卢卡斯,我想你的最后两条规则在模式前遗漏了一条规则。还要去掉PT,它在这种情况下是不合适的。

代码语言:javascript
复制
RewriteRule ^/([^/]+)/([^/]+)$ /index.php?test=1&page=$1&section=$2
RewriteRule ^/([^/]+)$ /index.php?test=1&page=$1 [L]

汤姆

票数 0
EN

Stack Overflow用户

发布于 2010-03-11 02:29:26

听起来像是index.php文件有问题,而不是.htaccess有问题。在没有test=1的情况下直接访问index.php,而不是通过重写的URL,会发生什么?我怀疑它被配置为在这种情况下抛出500错误。

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

https://stackoverflow.com/questions/2419429

复制
相关文章

相似问题

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