【问题标题】:Problem in access image file from outside of script folder从脚本文件夹外部访问图像文件的问题
【发布时间】:2018-12-24 03:04:20
【问题描述】:

问题:难以在 2 个文件夹之间同步图像

我的项目有 2 个图像文件夹:

Home/user/public_html/image

Home/user/m.fruit.com/image

public_html 为桌面版提供主页

m.fruit.com 服务于移动页面

两个版本都提供相同的图像。

当我有新的水果图像时,我需要把它放到两个文件夹中。这变成了双重工作......

我获取桌面版图片的方式是:(public_html文件夹中的index.php)

 <img id="image" src="image/<?php echo $image; ?>.jpg">

我的手机版图片获取方式是:(m.fruit.com文件夹中的index.php)

 <img id="image" src="image/<?php echo $image; ?>.jpg">

对于移动版本,我确实尝试访问 public_html 中的图像,这样我就不需要 2 个图像文件夹。但这似乎是不可能的:

   <img id="image" src="public_html/image/<?php echo $image; ?>.jpg">  

在这种情况下,有没有办法只使用 1 个图像文件夹来提供这 2 个版本的网站,而不是 2 个?

也欢迎其他更好的解决方案。

【问题讨论】:

  • 为什么不把桌面和移动网站做成同一个网站呢?
  • 来自 www &lt;img src="http://localhost:&lt;m port&gt;/image"&gt;
  • 你也可以在 .htaccess 上重定向 url
  • @Meghan 如何将 2 个版本的 2 个 index.php 放在 1 个站点中??
  • 我说不要。只做一个网站。或者按照我的第二条评论所说的去做

标签: php html


【解决方案1】:

首先,你可以设置base URL:like

  define('BASE_URL', 'http://example.com/');

然后设置图片src:

 <img src="<?php echo BASE_URL ?>image/imagename.jpg ">

或者创建一个辅助函数: PHP 代码

function asset(path){
   return BASE_URL . path;
}

HTML 代码:

 <img src="<?php echo asset('image/imagename.jpg'); ?> ">

这对双方都有效。

【讨论】:

    【解决方案2】:

    尝试用这个改变图片的url方案

    <?php echo "http://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']; ?>
    

    【讨论】:

      【解决方案3】:

      定义 base_url();

        define('base_url', 'http://Home/user');
      

      然后在你想显示图片的地方调用这个基本 url。

       <img id="image" src="image/<?php echo base_url('/public_html/').$image; ?>">
      

      【讨论】:

        猜你喜欢
        • 2012-03-28
        • 1970-01-01
        • 2012-06-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-03-10
        相关资源
        最近更新 更多