当我使用ngrok加载我的Laravel应用程序时,它只显示基本的html,没有css

cwdobuhd  于 2023-01-14  发布在  其他
关注(0)|答案(2)|浏览(125)

我和我的小组成员正在开发的网站只能在我的笔记本电脑上本地访问。我希望他们能够在自己家里打开网站,这样我的关注前沿的成员就可以编辑和查看网站上的更改。我还希望我的其他小组成员能够测试网站。
我尝试了很多方法让我们的laravel应用程序可以通过ngrok暂时公开使用,但它们只显示了基本的HTML,没有CSS和JavaScript。
第一个来自:https://vanrossum.dev/5-using-ngrok-with-laravel,其中涉及将此添加到应用的AppServiceProvider.php中:

public function boot(\Illuminate\Http\Request $request)
    {
        if (!empty( env('NGROK_URL') ) && $request->server->has('HTTP_X_ORIGINAL_HOST')) {
            $this->app['url']->forceRootUrl(env('NGROK_URL'));
        }

        // other code
}

在ngrok上运行这个

ngrok http -host-header=rewrite laravel-site.test:80

将接收到的URL作为NGROK_URL: url添加到.env文件,然后清除所有应用程序缓存
结果:无CSS或js
第二种方法是通过ngrok暴露端口9000,并在我的laravel应用程序上运行php artisan serve --port=9000。(https://www.youtube.com/watch?v=s8efVe5c1Xg)同样的事情,没有CSS和js。
我还尝试了这里提到的:NGrok and Laravel但它只加载了XAMPP欢迎页面
我们的CSS和js与使用asset()链接的CSS和js文件以及CDN的使用混合在一起。
我应该做些什么才能与我的小组成员共享网站?

xzv2uavs

xzv2uavs1#

我只是不得不跟着这篇文章到发球台:https://www.jobsity.com/blog/how-run-ngrok-test-share-your-local-development
1.在VSCode中打开您的gitbash终端,并将您的项目添加到工作区中(要确保gitbash终端中指示的路径是您的项目的路径),通过键入以下命令打开artisan服务器

php artisan serve

这将使用127.0.0.1而不是localhost(默认)。
保持控制台和Artisman服务器进程运行。这是侦听请求的Web服务器。
1.运行ngrok,键入

ngrok http 8000

1.转发链接将显示如下所示:(请注意,转发链接将因您而异)

Tunnel Status                 online
Version                       1.7/1.6
Forwarding                    http://284abb77.ngrok.com -> 127.0.0.1:8000

1.复制http链接,并将其发送给任何因开发或测试原因而希望访问此网站的人。(* 复制https链接将导致页面仅包含HTML,而不包含css/js*)

6ss1mwsb

6ss1mwsb2#

发生这个错误是因为在你的css或者bootstrap的某些部分链接是http的,你需要做的就是强迫它们变成https,这很简单,你要做的就是
1:进入应用-〉提供商-〉应用服务提供商2:在Register函数中记下此内容

if (env(key: 'APP_ENV') !=='local') {
  URL::forceScheme(scheme:'https');
}

3:重新加载你的网站,你就可以开始了😉

相关问题