Apache 天啊。这是个不错的,但没用

Apache 天啊。这是个不错的,但没用,apache,.htaccess,Apache,.htaccess,几天来,我一直把头撞在墙上,我知道我离得更近了,但我不知道如何做到这一点。htaccess是有效的 我有这个链接: http://rebateninja.com?page=reviews&id=B005KMDV9A&review=Shark-Navigator-Professional-Lift-Away-Vacuum-Clea http://rebateninja.com/reviews/B005KMDV9A/Shark-Navigator-Professional-Lift

几天来,我一直把头撞在墙上,我知道我离得更近了,但我不知道如何做到这一点。htaccess是有效的

我有这个链接:

http://rebateninja.com?page=reviews&id=B005KMDV9A&review=Shark-Navigator-Professional-Lift-Away-Vacuum-Clea
http://rebateninja.com/reviews/B005KMDV9A/Shark-Navigator-Professional-Lift-Away-Vacuum-Clea
RewriteEngine On
RewriteRule ^([^/\.]+)/([^/\.]+)/([^/\.]+)$ index.php?page=$1&id=$2&review=$3 [L]
http://rebateninja.com/reviews/B005KMDV9A/css/960.css
我想这样称呼它:

http://rebateninja.com?page=reviews&id=B005KMDV9A&review=Shark-Navigator-Professional-Lift-Away-Vacuum-Clea
http://rebateninja.com/reviews/B005KMDV9A/Shark-Navigator-Professional-Lift-Away-Vacuum-Clea
RewriteEngine On
RewriteRule ^([^/\.]+)/([^/\.]+)/([^/\.]+)$ index.php?page=$1&id=$2&review=$3 [L]
http://rebateninja.com/reviews/B005KMDV9A/css/960.css
我的权限是拥有以下内容:

http://rebateninja.com?page=reviews&id=B005KMDV9A&review=Shark-Navigator-Professional-Lift-Away-Vacuum-Clea
http://rebateninja.com/reviews/B005KMDV9A/Shark-Navigator-Professional-Lift-Away-Vacuum-Clea
RewriteEngine On
RewriteRule ^([^/\.]+)/([^/\.]+)/([^/\.]+)$ index.php?page=$1&id=$2&review=$3 [L]
http://rebateninja.com/reviews/B005KMDV9A/css/960.css
但是页面上满是404个错误,试图指向这样的不存在的资源:

http://rebateninja.com?page=reviews&id=B005KMDV9A&review=Shark-Navigator-Professional-Lift-Away-Vacuum-Clea
http://rebateninja.com/reviews/B005KMDV9A/Shark-Navigator-Professional-Lift-Away-Vacuum-Clea
RewriteEngine On
RewriteRule ^([^/\.]+)/([^/\.]+)/([^/\.]+)$ index.php?page=$1&id=$2&review=$3 [L]
http://rebateninja.com/reviews/B005KMDV9A/css/960.css
而不是

http://rebateninja.com/css/960.css

我做错了什么?

是的,没错,你的
.htaccess
是对的

可能是,将
[L]
更改为
[NC]
您的ocde如下所示:

RewriteEngine On 
RewriteRule ^([^/.]+)/([^/.]+)/([^/.]+)$ index.php?page=$1&id=$2&review=$3 [NC]

希望对查看您的实际站点有所帮助。指向您的css文件的链接是
css/960.css
,因此正在当前文件夹中查找它们,所以
http://rebateninja.com/reviews/B005KMDV9A/
而不是根目录

查看此帖子-

假设您想要:

http://rebateninja.com?key1=val1&key2=val2&key3=val3
要重写为:

http://rebateninja.com/val1/val2/val3

一种方法是:

RewriteEngine On
RewriteBase /
RewriteCond %{QUERY_STRING}  [\w]+=(.*)&[\w]+=(.*)&[\w]+=(.*)
RewriteRule .* /%1/%2/%3? [R=301,L] 

我还假设有一个重定向,所以我添加了它。[L]标志本身不会重定向。

您的链接是相对的,而不是绝对的。这意味着浏览器尝试猜测基本URI是什么,以及浏览器访问的URL是什么样子:

http://rebateninja.com/reviews/B005KMDV9A/Shark-Navigator-Professional-Lift-Away-Vacuum-Clea
<link rel="stylesheet" type="text/css" href="css/960.css">
这意味着内容中的任何相对URL都将附加基本的
/reviews/B005KMDV9A/
,因此如果相对链接看起来像:

http://rebateninja.com/reviews/B005KMDV9A/Shark-Navigator-Professional-Lift-Away-Vacuum-Clea
<link rel="stylesheet" type="text/css" href="css/960.css">

在页眉中。

缩进4个空格或突出显示代码块,然后单击
{}
按钮以设置代码格式。链接将不会转换为真正的超链接。您如何链接到css文件?”
。/css/960.css
,“
http://rebateninja.com/css/960.css
'或'
/css/960.css
'?通常,确保真实资源不被重写的方法是
RewriteCond%{REQUEST_FILENAME}-f
重写cond%{REQUEST_FILENAME}-d
都放在
重写规则