【问题标题】:Yii - image files don't displayYii - 图像文件不显示
【发布时间】:2013-08-22 10:30:51
【问题描述】:

我的视图文件中有 img 标签,如下所示。

<img src="<?php echo Yii::app()->baseUrl.'/img/test.jpg'; ?>" />

但是,它不显示图像。

我在index.php(前端控制器)所在的同一目录中有“img”文件夹。

怎么了!?

有人知道如何解决我的问题吗?

提前致谢!!!

+++添加了 1+++

我正在本地环境中开发。

+++添加了 2+++

发生了非常奇怪的事情。

当我通过在浏览器上输入图像的路径来访问特定图像时,会显示请求的图像。

http://localhostname/img/sidebar.gif

但是当我访问同一个 img 文件夹中的其他图像时,我收到“禁止”错误。

此外,当我在视图中键入以下内容时,它会显示图像。

<img src="<?php echo Yii::app()->baseUrl.'/img/sidebar.jpg'; ?>" />

但是,当我键入存在于同一 img 目录中的其他图像的路径时,它不会显示任何图像。

【问题讨论】:

  • 转到应该有图片的页面。然后查看html源代码,看看正在为图片生成什么url。应该可以帮助您诊断问题。
  • 感谢您的评论!这是我使用 Yii::app()->baseUrl img/see.jpg 时 src 属性的值 这是我使用 Yii::app()->betBaseUrl(true) 时获得的 src 属性值。 localhostname/img/see.jpg 顺便说一句,我正在本地环境中开发我的应用程序。
  • 我添加了更多描述我的情况的信息。如果你能看一下,我很感激,如果可能的话给我任何建议:)
  • 您的 .htaccess 文件是什么样的?
  • 感谢您的评论。我还没有创建 .htaccess 文件。

标签: php yii


【解决方案1】:

如果图像不显示,调试浏览器有错误 404。见那里。您将看到应该获取的完整网址。它的网址不是您所期望的 - "&lt;?php echo Yii::app()-&gt;baseUrl.'/img/test.jpg'; ?&gt;"。你应该根据这个错误编辑你的代码。

【讨论】:

    【解决方案2】:

    而不是Yii::app()-&gt;baseUrl

    试试这个:Yii::app()-&gt;getBaseUrl(true)

    默认情况下,baseUrl 返回相对 URL。

    <img src="<?= Yii::app()->getBaseUrl(true) ?>/img/sidebar.jpg" />
    

    【讨论】:

    • 感谢您的回复!我试过你的建议,但是没有用:(
    • 它返回了绝对路径。
    • 感谢您的回复。我添加了更多描述我的情况的信息。如果你能看一下,我很感激,如果可能的话给我任何建议:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-09
    • 1970-01-01
    • 1970-01-01
    • 2013-07-19
    • 2012-07-05
    相关资源
    最近更新 更多