【问题标题】:Laravel broken image links in public folder on staging environment. .htaccess?Laravel 在暂存环境的公共文件夹中损坏了图像链接。 .ht 访问?
【发布时间】:2014-03-05 00:11:25
【问题描述】:

我刚刚将 Laravel 构建部署到临时服务器,但我的图像文件夹的 URL 存在问题。

我的本​​地开发环境中不存在此问题。

两台服务器上的图像都位于 www_root/public/img/ 中,并且页面源中的 /img/xxxx.jpg 被引用

如上所述,这一切都在本地开发中正常工作,但在我的暂存环境中却没有,并且找不到图像。

在暂存环境中,如果我将图像链接更改为 /public/img/xxxx.jpg,则会找到它们,但如果我对本地开发人员执行此操作,则会破坏图像参考。

www_root 的 htaccess 包含:

<IfModule mod_rewrite.c>
    Options +FollowSymlinks
    RewriteEngine On

    # Rewrite to 'public' folder
    RewriteCond %{HTTP_HOST} ^dev.domain.com$ #on the staging environment, this is updated accordingly
    RewriteCond %{REQUEST_URI} !public/
    RewriteRule (.*) public/$1 [L]
</IfModule>

我已经相应地更新了我的 application/config/application.php 文件。

除了以上 2 个环境之间的变化,其他一切都完全一样。

我看不到其他地方可能存在问题。

有什么想法吗?

【问题讨论】:

    标签: php .htaccess laravel


    【解决方案1】:

    我首先想到的是在模板中使用 URL::asset('link/to/asset.jpg')。

    因为你创建了绝对 URL

    【讨论】:

    • 没有雪茄,很遗憾。这给了我同样的问题。干杯
    【解决方案2】:

    当我尝试使用您提供的 HTACCESS 文件时,它也破坏了我的所有链接。试试这个:

    <IfModule mod_rewrite.c>
        RewriteEngine on
        RewriteCond %{REQUEST_URI} !^public/
        RewriteRule ^(.*)$ /public/$1 [L]
    </IfModule>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-03
      • 2017-03-23
      • 2014-12-04
      • 2020-02-27
      • 2017-11-17
      • 1970-01-01
      相关资源
      最近更新 更多