我正在做一个只有一页的网站,我想输入url:“http://test.com/portfolio
”和我的htaccess来访问相同的页面,例如http://test.com/#portfolio
,我已经用下面的代码得到了,但是当我把http://test.com/portfolio/
和'/
'之后,服务器打开同一页面,但没有CSS,带有图像的链接...浏览器仅显示html代码。
<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^portfolio(.*)$ #portfolio
RewriteRule ^contact(.*)$ #contact
</IfModule>
你知道有什么可以帮助我的吗?
最佳答案
这是因为css和图像是动态链接的(不是以/
开头)。这意味着当您转到:
/portfolio/
相对URI基础从
/
变为/portfolio/
。这意味着如果您有链接的图像,例如:src="images/foo.jpg"
您可以加载
/images/foo.jpg
而不是loeading /portfolio/images/foo.jpg
。更改链接以使其成为绝对链接(以
/
开头),或将其添加到页面的页眉中:<base href="/" />
关于apache - 将'/'放在网址末尾时的htaccess,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19286212/