5

通过 Voyager 创建新用户后,头像显示为损坏的图像。我上传了一张新图片,但图片仍然损坏。

我在 Google Chrome 中使用 Console 进行了检查,发现 3 404 错误:

2017-06-19 10:53:50.159 http://localhost:8888/storage/users/June2017/ypKlbqbATDbpnYctZBFp.png 加载资源失败:服务器响应状态为 404(未找到)

2017-06-19 10:53:50.256 http://localhost:8888/storage/users/June2017/ypKlbqbATDbpnYctZBFp.png 加载资源失败:服务器响应状态为 404(未找到)

2017-06-19 10:53:50.473 http://localhost:8888/vendor/tcg/voyager/assets/images/bg.jpg加载资源失败:服务器响应状态为 404(未找到)当我查看项目,2个存储错误的路径是:http://localhost:8888/storage/app/public/users/和: http://localhost:8888/storage/app/public/users/June2017

在媒体中,我在浏览文件夹时看到了类似的路径问题:

2017-06-19 11:38:22.248 %7B%7B%20selected_file.path%20%7D%7D:1 GET http://localhost:8888/development/PhpstormProjects/Search4Venues/public/admin/%7B%7B% 20selected_file.path%20%7D%7D 404(未找到)

预料到这个问题,.env我有:APP_URL=http://localhost:8888

这是配置错误吗?

编辑

一位比我更有经验的同事通过 Voyager 发现了一些不一致的地方,他试图解决这些问题。

app.php中,我们不得不改变:

'url' => env('APP_URL', 'http://localhost:8888/development/PhpstormProjects/Search4Venues'),

... 至:

'url' => env('APP_URL', 'http://localhost:8888'),

filesystems.php中,我们不得不改变:

'public' => [
    'driver' => 'local',
    'root' => storage_path('app/public'),
    'url' => env('APP_URL').'/storage',
    'visibility' => 'public',
]

... 至:

'public' => [
    'driver' => 'local',
    'root' => storage_path('app/public'),
    'url' => env('APP_URL').'/development/PhpstormProjects/Search4Venues/public/storage',
    'visibility' => 'public',
]

但是,他发现了其他问题config/voyager.php

'assets_path' => '/vendor/tcg/voyager/assets',

...路径中似乎也缺少它PhpstormProjects/Search4Venues

http://localhost:8888/vendor/tcg/voyager/assets/images/bg.jpg

在这个阶段,我们不知道 Voyager 还有什么问题。

4

10 回答 10

6

首先你需要编辑文件.env:

APP_URL=http://localhost

至:

APP_URL=http://yout-site-url

之后,您需要像这样编辑文件 fylesystem.php:

  'public' => [
        'driver' => 'local',
        'root' => storage_path('app/public'),
        'url' => env('APP_URL').'/public/storage',
        'visibility' => 'public',
         ],

我被帮助了

于 2017-12-13T00:33:02.670 回答
3

这是一个常见的问题,甚至提到了航海者的官方网站,只需阅读此页面https://voyager-docs.devdojo.com/troubleshooting/using-https

在夏季只需打开文件filesystem.php夹中的文件config并删除这行代码'url' => env('APP_URL').'/storage',

于 2019-01-04T07:58:25.073 回答
3

按着这些次序:

1.将.env文件中的APP_URL更改为您的网站 url

例如:

APP_URL=http://localhost

APP_URL=http://127.0.0.1:8000

2.通过以下方式创建符号链接:(如果尚未完成)

php artisan storge:link

3.重新启动您的服务器(必须。否则将不会应用费用。)

于 2018-08-25T05:28:27.100 回答
1

更新你的 .env 文件

APP_URL=http://localhost:8000

然后运行

php artisan config:clear

最后的

重新开始发球

这对我有用。

于 2019-10-28T01:53:08.067 回答
0

更新 .env 文件:

APP_URL=http://localhost:8000

已修复问题

不要忘记重新启动服务器

于 2018-08-24T10:40:39.030 回答
0

更新 .env 文件:

APP_URL=http://localhost/voyager

并更新了 filesystems.php

'public' => [
     'driver' => 'local',
     'root' => storage_path('app/public'),
     'url' => env('APP_URL').'/storage/app/public',
     'visibility' => 'public',
 ],
于 2019-07-25T19:51:03.643 回答
0

更改.env文件中的一行:

APP_URL = http://localhost

APP_URL = http://<your site url>

该命令用于删除配置缓存文件并重新创建。

php artisan config:cache
于 2020-02-20T07:54:43.490 回答
0

如果我们使用默认端口(如 localhost:8000)运行 php artisan serve,有时通常会显示此错误,但如果您将 laravel wit voyager 放在您自己的服务器(如 xampp/mamp 等)的 htdocs/www 中,此错误将消失,

所以你可以试试:

  1. 安装 apache 或独立的网络服务器,如 wamp 或 mamp
  2. 将您的项目放在 htdoc/www 文件夹中,并且不要忘记设置 .env app_url:localhost (或您的域没有端口)
  3. 将 apache 配置中的文档根目录更改为您的项目文件夹
  4. 访问http://[your_domain]/[your_project ]
  5. 完毕..

谢谢

于 2018-05-29T06:59:08.733 回答
0

如果您使用 laragon,请更改

'url' => env('APP_URL').'/storage'

'url' => env('APP_URL').'./storage'
于 2020-05-14T21:45:22.403 回答
0

您需要做的就是更改 .env

APP_URL = http://localhost

APP_URL = http://<whatever your site is called>

然后移动到图片文件

public users

出于某种原因,航海者将它们存储在

public users\users

至少它对我有用 只需检查 Voyager 为化身创建的 URL 并将它们移动到具有相同 URL 的公共文件夹中。

至少为我工作

于 2019-10-27T14:43:48.027 回答