0

我需要设置我的 htaccess 文件,因此当用户输入 www.example.com/post/54 时,它会呈现为 www.example.com/post.php?id=54

我这样设置规则:

RewriteRule ^post/(.*)$  post.php?id=$1 [L]

当我在本地主机上对其进行测试时,该页面仅将其显示为 html 并且不捕获图像或 CSS 文件。我的目录设置为 C:/MyWebsites/example 并且看起来文件不是在目录中而是在 C:/MyWebsite 文件夹中加载。这会是什么原因...

4

2 回答 2

1

浏览器尝试使用请求的 URI 来确定 URI 基础。所以当浏览器请求时http://www.example.com/post/54,URI 是/post/54,BASE 是/post/。有了这个基础,所有相对链接都会在链接的前面附加这个,这使得它与 css 之类的东西的相对链接有错误的基础。

您需要将所有链接更改为绝对链接,或添加

<base href="/">

post.php页面的标题。

于 2012-10-30T07:21:59.283 回答
0

预先/example/添加到您的 CSS 和图像路径..

于 2012-10-30T06:53:57.270 回答