2017-03-22 45 views
0

我是htaccess重写的新手,想知道是否有人可以为我提供解决方案。所以在我的网站上,我有以下格式的自定义头像图片的用户。如果请求的图片URL没有找到,使用mod_rewrite调用默认图片URL

http://siteurl.tld/customavatars/avatar78364_1.gif (凡号(78364_1)是用户ID)

每个用户可获得生成自己customavatars图像链接,即使他们没有图像上传。这里是这个问题,目前我使用ErrorDocument 404 /images/icons/no-avatar.png作为默认图片,供任何没有上传自己图片的用户使用。这404不适合搜索引擎优化,所以我想尝试做的是使用重写来保留原始URL,但服务于无头像图像文件。

实际上,任何前往http://siteurl.tld/customavatars/avatarUSERID_HASNOIMAGE.gif的人都会显示默认图片,而不会被重定向到浏览器网址中的no-avatar.png。

+0

我的答案是否适合你?会欣赏一个简短的反馈:) –

回答

0

这应该做的伎俩:

RewriteCond %{REQUEST_FILENAME} avatar.*\.gif$ 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule /.* http://siteurl.tld/customavatars/no-avatar.png [R=301,L] 

有效的任何请求的文件,做开始的头像和名为.gif结束,但不存在的答案为http://siteurl.tld/customavatars/no-avatar.png

希望它能帮助:)

+0

它有帮助吗?如果它没有让我们知道... –

+0

现在刚刚尝试过,工作的一种享受。谢谢你的帮助!! –

+0

可爱:)不客气! –