繁体   English   中英

将图片从域导入到子域?

[英]Import Images From Domain To Subdomain?

如何在PHP中将图像从域链接到子域?

我的主站点上有一个滑块。 我想在m.mysite.com子域中的移动网站上使用相同的图像

我尝试遵循以下代码(用于当前的滑块):

<?php
$files = glob('images/gallery/*.{jpg,png,gif}', GLOB_BRACE);
foreach($files as $file) {
  echo "<div class='slide'><a href=''><img src='" . $file . "' alt='description'></a></div>";
}
?>

什么都没发生。 因此,我将代码修改为:

<?php
$files = glob('../images/gallery/*.{jpg,png,gif}', GLOB_BRACE);
foreach($files as $file) {
  echo "<div class='slide'><a href=''><img src='" . $file . "' alt='description'></a></div>";
}
?>

这次有点奏效了。 它输出:

<div class='slide'><a href=''><img src='../images/gallery/1012081_1501438913448804_6782879489506876198_n.jpg' alt='description'></a></div>
<div class='slide'><a href=''><img src='../images/gallery/10177464_1495074060751956_373648277891171115_n.jpg' alt='description'></a></div>

所有图像都“损坏”。

当我单击源代码中的img src时,我得到以下信息: http : //m.example.com/images/gallery/1012081_1501438913448804_6782879489506876198_n.jpg

似乎代码在正确的目录中查找,为每个图像制作了一个div,然后添加了m。 一开始

如何解决这些图像在移动目录中找不到的位置?

为了简单起见,图片链接应为http://example.com/images/gallery/1012081_1501438913448804_6782879489506876198_n.jpg

多谢你们。

我在这里看到两个可能的解决方案:

  1. 如果要从移动子域交付它,则Web服务器需要在移动网站的webroot内部。 您可以将映像目录符号链接到子域,因此两个域的路径相同。 也许您也必须告诉您的Web服务器遵循符号链接。

  2. 只需在移动网站上提供来自您的主域的图像

可能的解决方案如下所示:

<?php
$files = glob('../images/gallery/*.{jpg,png,gif}', GLOB_BRACE);
$domain = "http://www.example.com/"; //your domain
foreach($files as $file) {
  $path = ltrim($file, './'); //strip ../ from the beginning of the path

  echo "<div class='slide'><a href=''><img src='" . $domain . $path . "' alt='description'></a></div>";
}

旁注:不要在PHP文件的末尾使用?> ,您不需要它。 如果您不小心有换行符(或其他原因),则会导致该换行符立即打印到浏览器,如果您想发送标头, 则会导致问题...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM