我有两个域位于一台服务器上,我想在域B上使用域A中的图像。
但是,我不希望域B的用户知道图片是从域A中提取的。
所以推杆:
<img src = "http://DOMAIN A/image.jpg">
我更喜欢做类似的事情:
<img src = "path/on/server/image.jpg">
...但是我没有工作 - 我肯定有正确的道路:
/home/username/public_html/images/image.jpg
首先使用该路径对图像执行file_exists。
作为替代方案,我尝试过使用:
<img src="data:image/jpg;base64,...">
但是有很多图像,这种方法非常慢。
答案 0 :(得分:1)
您可以在服务器上使用重定向,例如通过mod_rewrite。 只需将特殊文件夹从服务器A重定向到服务器B.
尝试类似(如果你在Apache Web服务器上,在服务器A上,在.htaccess文件中):
RewriteEngine on
RewriteRule ^/img/(.+) http://server-b.com/img/$1 [R,L]
然后您可以指向HTML中的服务器A,但服务器会在后台将其重定向到服务器B.
或查看Apache documentation of rewriting以获取更多信息。
答案 1 :(得分:0)
没有。 HTTP客户端无法访问运行HTTP服务器的计算机的文件系统。
如果要隐藏托管图片的域,则必须为其提供不同的URL(在不同的域上)。
答案 2 :(得分:0)
由于客户端执行图像标记,因此无法实现。您可以在B的Web服务器目录中添加某种符号链接以指向A。
的文件或使用apache alias选项查找文件(如cgi-bin所做的那样):
http://httpd.apache.org/docs/current/mod/mod_alias.html#alias
答案 3 :(得分:0)
你可以这样,
http://serverip/~sitefolder/
的 imagesfolder / images.jpg 强>
但@Tobiask方法比这更好。
答案 4 :(得分:0)
是的,您可以使用相对网址路径:
如果您的html文档位于
/home/username/public_html/index.html
使用
<img src="images/image.jpg" />
如果它位于其他用户帐户,而您的帐户位于http://host.com/~username/index.html则可以使用
<img src="../~otherusername/images/image.jpg" />
答案 5 :(得分:0)
您可以使用
ln -s path / on / server / image.jpg image.jpg
适用于我的默认apache设置。