我的软件支持多个域名指向完全相同的目录,我使用共享主机。我需要有每个域名的图标加载从目录与各自的主机名。这里是一个视觉...
http://www.example1.com/favicon.ico
public_html/www.example1.com/favicon.ico
\
http://www.example2.com/favicon.ico
public_html/www.example2.com/favicon.ico
\
http://www.example3.com/favicon.ico
public_html/www.example3.com/favicon.ico
我试过一些类似的重写,但没有成功...
RewriteEngine on
RewriteRule ^favicon\.ico$ %{HTTP_HOST}/favicon\.ico
要记住的事情...
1.)我使用共享主机,所以请记住,我需要的答案应该是简短的。
2.)我将只接受动态答案,我将只使用%{HTTP_HOST}变量,而不是静态域名,因为我不会在每次添加域名时手动编辑我的.htaccess文件。
3.)我可能最终会把一个.htaccess文件放在这些子目录中,虽然我现在没有,一个例外的favicon将非常感谢,虽然是没有必要的,我接受的答案。
4.)我很乐意做任何澄清。
5条答案
按热度按时间11dmarpk1#
使用此代码:
mcdcgff02#
我也一直在努力解决这个问题,但我最终使用以下规则修复了它:
我把它塞到了一个虚拟主机声明中。你可以对你的每个虚拟主机都这样做,你所需要做的就是把第二部分指向正确的图标!这就解决了我所有的图标问题,甚至对于Firefox来说也是如此:)
(在FF 25、Safari 6.1、IE8和IE10上进行了测试)
9ceoxa923#
这个对我来说效果更好
qqrboqgw4#
要支持所有可能的浏览器和平台,除了
favicon.ico
文件外,还需要有android-chrome-192x192.png
、apple-touch-icon.png
、favicon-32x32.png
等文件......下面是支持它们的重写规则:
这将服务favicons包括苹果触摸,Android Chrome,Windows和其他favicons从
/favicons/<DOMAIN_NAME>
文件夹。7hiiyaii5#
我在子域上的文件中遇到favicon问题
我很长一段时间都在为htaccess中只有一个子域的favicon重定向而挣扎。
我的例子是所有的域都从public/ directory中获取favicon。一个子域(我们称之为'subdomain_a')被配置为从另一个目录中获取它,并且它工作了。
在subdomain_a上打开文件时出现问题。文件视图(例如,pdf-viewer)中的favicon取自public/目录,而不是取自subdomain_a的配置。
下面是我的解决方案: