我使用winXP和AppServ。我的网站root上有一个“showitem.php”。示例用法:
www.mydomain.com/showitem.php?id=123
我想使用以下链接:
www.mydomain.com/item/123
在.htaccess中我写了这句话:
RewriteRule ^item/([^/]+)$ showitem.php?id=$1
服务器指向showitem.php并成功接收id。但是,主要问题是css和js文件。如果我将“css / style.css”设置为“/css/style.css”,则页面显示在Internet上,但不显示在localhost上,因为root是“localhost”但文件位于“localhost / mydomain”下。我也为.css文件尝试了“!-f”条件,但它没有帮助,据我所知,它不能。要解决这个问题,我应该将错误的css文件解释指向正确的位置,所以我想将客户端请求“item / css / style.css”重定向到其原始位置“css / style.css”。我为localhost添加了以下规则,但还有其他方法吗?
RewriteRule ^item/css/([^/]+)$ /mydomain/css/$1
RewriteRule ^item/img/([^/]+)$ /mydomain/img/$1
答案 0 :(得分:1)
在html头中设置基本标记。
<base href="http://www.mydomain.com/" />
然后设置样式表链接相对于基础的路径,例如
<link href="css/style.css" />
答案 1 :(得分:0)
您可以将这些内容写入文件.htaccess
ErrorDocument 404 /error_404.php
/error_404.php
是您要在其中放置内容的错误文件。