gpt4 book ai didi

Playframework: "play start"的奇怪行为 - 缓存问题?

转载 作者:行者123 更新时间:2023-12-04 07:30:21 25 4
gpt4 key购买 nike

我目前正在使用 play framework 2 开发一个 web 应用程序。我在/public 目录下创建了一个文件夹“files”。当我使用“play run”启动服务器时,该目录下的所有资源都可以访问。

部署到服务器后。我通过运行“play start”启动服务器,发现“files”下的资源再也找不到了。

我想知道“play start”和“play run”不一致的原因是什么

更新:经过几次试验。我发现是新上传的资源无法显示。场景如下:

1. play start --> server starts.
2. use application to upload a few images to the server.
3. try to display the uploaded image --> nothing is shown. browser shows the resource is not accessible.
4. kill the server process with task manager.
5. rm RUNNING_PID
6. run play start again
7. Try to display the uploaded image --> now the images are showing.

所以,看起来像“Play 开始”的“热更新”问题我可以做任何配置来让服务器接受更改吗?谢谢。

最佳答案

您将图像具体存储在哪里?在编译时,静态资源会从 /public 复制到 /target/scala-2.9.1/classes/public。该目录是类路径的一部分,并且从那里提供 Assets 。因此,如果您在运行时将文件存储在那里,应该可以找到它们。

旁注:这可能不是一个可持续的解决方案,因为您的用户加载的图像在下一次构建期间会被删除。也许您应该考虑在应用安装之外使用符号链接(symbolic link)(注意!安全问题!)或将 Assets 存储在其他地方,数据库或 S3 始终是不错的选择。

关于Playframework: "play start"的奇怪行为 - 缓存问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10747522/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com