首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >数码海洋-应用平台- Laravel长丝

数码海洋-应用平台- Laravel长丝
EN

Stack Overflow用户
提问于 2022-10-25 15:42:34
回答 2查看 84关注 0票数 0

我正在托管一个完整的堆栈应用程序。对于前端,我使用Next JS作为前端,而后端Laravel使用长丝作为仪表板。

我试着在数码海洋应用平台上托管所有的东西,在那里我给了前端正常的基本路径和laravel后端的/app路径。

为了让Laravel知道URL更改了,我将环境变量设置为:

代码语言:javascript
复制
APP_URL=${APP_URL}/app

现在的问题是,当我尝试登录到我的后端(例如-site/app/admin/ login )时,我会得到一个404的CSS文件,并且登录不能工作。

长丝似乎完全不知道URL发生了变化。它不仅是CSS,而且当我点击一个按钮时,它还会尝试将我重定向到基url。

我如何让“丝”知道URL改变了?现在,我正在考虑将laravel应用程序移到根文件夹,并在vercel上托管前端。

EN

回答 2

Stack Overflow用户

发布于 2022-10-31 15:01:41

在AppServiceProvider中引导()

代码语言:javascript
复制
if (app()->isProduction()) {
 \URL::forceScheme('https');
}
票数 1
EN

Stack Overflow用户

发布于 2022-11-07 07:42:32

我也经历过"livewire.js - 404找不到“这个问题.在NGINX服务器上。同一应用程序在apache2环境中运行良好。

livewire (除非资产已经发布并实际存在于服务器上,因此nginx可以为它们服务)发生的情况是,livewire.js文件是由laravel应用程序构建/服务的.这意味着PHP。但是在默认的nginx服务器配置中,请求永远不会有那么远,nginx只是找不到静态js文件并返回404 .永远不要把请求传递给laravel应用。

有两个解决方案可以解决这个问题:

1.)发布livewire.js文件任何其他静态文件,这样nginx就可以返回它们。

2.)在nginx配置中添加一行代码,告诉nginx检查是否可以在磁盘/缓存中找到静态文件,如果没有将请求发送到php(在本例中是index.php文件),则可以动态构建它。

这是密码..。通常,您可能已经在nginx配置中有一个指令,指示nginx如何处理静态文件.只需在指令中添加这一行:

代码语言:javascript
复制
try_files $uri /index.php?$query_string;

因此,添加到nginx服务器配置中的完整指令如下所示:

代码语言:javascript
复制
location ~* \.(jpg|jpeg|gif|png|webp|svg|woff|woff2|ttf|css|js|ico|xml)$ {
       try_files $uri /index.php?$query_string;
       access_log        off;
       log_not_found     off;
       expires           14d;
}

如果您只希望js文件具有此行为,则创建一个新的指令,并将js从前面示例中的列表中删除。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74196740

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档