【问题标题】:laravel 5.8 issue with direct nav link and redirect routelaravel 5.8 直接导航链接和重定向路由问题
【发布时间】:2019-11-10 18:38:41
【问题描述】:

这有点奇怪,但我的 laravel 网站上有一个导航链接,我将其更改为直接转到 aws 存储桶文件

<li><a href="www.awslink/thisLink.com">Images</a></li>

但是,旧站点的导航直接指向本地站点存储(站点->公共->图像->资产)中的文件,网址为 www.mysite.com/images

有没有办法让如果有人有书签或硬编码链接 www.mysite.com/images 它将指向该 aws 链接?或者我可以设置一条路线在那种情况下直接去它吗?

我为Get::'Images' 设置了一个重定向到链接的路由,但问题是我的公用文件夹中有同名文件夹。我可以忽略那个文件夹吗?

新路线:

Route::get('Images', function(){
    return redirect('https://aws.images');
});

【问题讨论】:

  • 你用的是apache还是nginx?
  • 它使用 Apache 托管在 IIS windows 服务器上。我有其他页面可以获取根文件,但在这种情况下,我有一些无法更改的硬编码到 site.com/Images(第三方)的内容,因此我需要匹配的路线,但忽略我有那个目录。我实际上更改了目录的名称,但现在只得到 404
  • @Sky 也更新了我的新路线

标签: php html laravel


【解决方案1】:

因为你的公共目录中存在一个同名的文件夹,它首先由你的网络服务器处理,并且不会让 Laravel 知道它。所以你必须配置你的网络服务器来重定向到你的新位置。

当您使用 apache 时,您必须将此行添加到 .htaccess 文件:

Redirect 301 /images https://aws.images

【讨论】:

  • 这是有道理的,但是如果我更改了文件夹的名称,它应该可以在没有这个的情况下工作吗?现在我已经更改了文件夹的名称,它不再访问该目录,但我现在确实得到了 404
  • @TomN。这可能是因为您的 Apache 配置。您的 apache 可能使用 /images 路由的别名将其指向另一个目录。看看stackoverflow.com/questions/15770778/…httpd.apache.org/docs/2.4/mod/mod_alias.html
猜你喜欢
  • 2019-09-11
  • 2014-02-16
  • 2022-11-12
  • 1970-01-01
  • 1970-01-01
  • 2017-01-01
  • 2017-04-17
  • 2020-02-13
  • 1970-01-01
相关资源
最近更新 更多