分享Laradock中Laravel Octane与WebSocket的nginx配置

本篇文章给大家带来了关于laravel的相关知识,其中主要是记录一下laradock中laravel octane与websocket的nginx配置,感兴趣的朋友,下面一起来看一下,希望对大家有帮助。

分享Laradock中Laravel Octane与WebSocket的nginx配置

docker 安装laradock,和Laravel Octane的安装这里就不过多赘述了。

前情描述

laradock中安装好Laravel Octane后swoole启动,在nginx中配置端口访问连接失败, 报错提示502,配置如下:

location /octane {    proxy_pass http://127.0.0.1:8080;}

原因:Swoole服务器在Workspace容器中运行;Nginx服务器在Nginx容器中运行,需要找到Workspace的ip并在nginx中配置。

解决方法

docker ps 查看Workspace容器的id。

琅琅配音 琅琅配音

全能AI配音神器

琅琅配音 208 查看详情 琅琅配音

docker inspect 容器id,找到Networks中的IPAddress

修改nginx配置文件。

map $http_upgrade $connection_upgrade { default upgrade; ''      close;}
upstream ws { server 172.22.0.4:9502 weight=5 max_fails=3 fail_timeout=30s;}
location /ws { set $suffix ""; if ($uri = /index.php) {     set $suffix ?$query_string; } proxy_http_version 1.1; proxy_set_header Host $http_host; proxy_set_header Scheme $scheme; proxy_set_header SERVER_PORT $server_port; proxy_set_header REMOTE_ADDR $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $connection_upgrade; proxy_pass http://ws$suffix;}

重启nginx。

配置文件

map $http_upgrade $connection_upgrade {    default upgrade;    ''      close;}upstream ws {    server 172.22.0.4:9502 weight=5 max_fails=3 fail_timeout=30s;}server {    listen 80;    listen [::]:80;    server_name bbs.test;    root /var/www/laravel/public;    index index.php index.html index.htm;    location / {         try_files $uri $uri/ /index.php$is_args$args;    }    location ~ .php$ {        try_files $uri /index.php =404;        fastcgi_pass php-upstream;        fastcgi_index index.php;        fastcgi_buffers 16 16k;        fastcgi_buffer_size 32k;        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;        #fixes timeouts        fastcgi_read_timeout 600;        include fastcgi_params;    }    location ~ /.ht {        deny all;    }    location /.well-known/acme-challenge/ {        root /var/www/letsencrypt/;        log_not_found off;    }    location /ws {        set $suffix "";        if ($uri = /index.php) {            set $suffix ?$query_string;        }        proxy_http_version 1.1;        proxy_set_header Host $http_host;        proxy_set_header Scheme $scheme;        proxy_set_header SERVER_PORT $server_port;        proxy_set_header REMOTE_ADDR $remote_addr;        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;        proxy_set_header Upgrade $http_upgrade;        proxy_set_header Connection $connection_upgrade;        proxy_pass http://ws$suffix;    }    error_log /var/log/nginx/laravel_error.log;    access_log /var/log/nginx/laravel_access.log;}

推荐学习:《laravel视频教程》

以上就是分享Laradock中Laravel Octane与WebSocket的nginx配置的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/338657.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月5日 17:22:09
下一篇 2025年11月5日 17:26:02

相关推荐

  • 如何保障PHP 8应用程序的安全性?

    PHP 8 应用程序的安全保障需要遵循以下步骤:基础功:输入验证和输出转义:对用户输入进行验证和过滤,防止恶意代码注入和 XSS 攻击。进阶:数据库安全:使用预处理语句防止 SQL 注入,定期备份数据库以防万一。高级:代码审计和安全测试:进行代码审计或渗透测试,找出潜在漏洞。更高级:使用成熟的框架和…

    2025年12月9日
    000
  • 如何使用 Traefik 在子文件夹中设置 Laravel

    本文介绍如何在 Traefik 反向代理下,将 Laravel 应用部署到子文件夹中。 假设:Traefik 已安装并配置了 HTTP 和 HTTPS 入口点,Laravel 应用部署在 /app 子文件夹,Traefik 和 Laravel 使用名为 traefik 的外部网络。 修改 docke…

    2025年12月9日
    000
  • PHP 书籍推荐

    php 和 mysql 学习资源推荐:从入门到高级 本文推荐一系列 PHP 和 MySQL 学习书籍,涵盖不同技能水平,从初学者到高级开发者都能找到合适的学习资料。 初学者 PHP 和 MySQL:忍者新手: 这本书专为初学者设计,重点讲解如何构建 Web 项目,并涵盖数据库实践、安全性和数据操作。…

    2025年12月9日 好文分享
    000
  • 配置 Laravel 日:环境设置

    Laravel 环境配置是确保应用在开发、测试和生产环境中稳定高效运行的关键。Laravel 的环境配置系统简化了这一过程。本文将指导您有效设置和管理 Laravel 环境。 1. .env 文件 Laravel 环境配置的核心是项目根目录下的 .env 文件。该文件包含定义应用设置的键值对。 .e…

    2025年12月9日
    000
  • Sublime Text Config for Laravel

    本文档介绍了笔者使用 Sublime Text 编辑器进行 Laravel 应用开发时的配置方案。 插件 以下插件显著提升了开发效率: GitBlameGitGutterAdvancedNewFileSyncSideBarLSPLSP-intelephenseLSP-bashLSP-dockerfi…

    2025年12月9日
    000
  • Laravel 开发的未来:值得关注的招聘趋势和技能

    Laravel框架的持续演进,使其保持行业领先地位,这对于希望充分利用其强大功能的企业至关重要。本文将深入探讨Laravel开发的未来趋势,重点关注新兴技术及招聘Laravel开发人员时需要优先考虑的关键技能,并特别分析在越南招聘软件工程师的优势。 1. 微服务架构的崛起: 趋势: 随着应用日益复杂…

    2025年12月9日
    000
  • GitHub 页面上的 Day Host 静态应用程序

    github pages 仅支持静态网站托管,无法直接运行 php 应用(如 laravel)。但可以通过导出 laravel 应用的静态前端(html、css、javascript)到 github pages。以下步骤演示如何将 laravel “hello world” 应用部署到 githu…

    2025年12月9日 好文分享
    000
  • 日设置 Laravel

    laravel 入门指南:使用 xampp 搭建您的第一个 laravel 11 应用 Laravel 凭借其简洁的语法、强大的工具和丰富的功能,成为最受欢迎的 PHP 框架之一。无论您是开发小型应用还是大型企业系统,Laravel 都能为您提供构建流畅现代 Web 体验所需的一切。 本循序渐进指南…

    2025年12月9日
    000
  • 教程:Laravel Nextjs 教程

    熟悉Laravel,想学习Next.js?本文将指导您如何结合这两个框架,构建强大的全栈应用。即使您是Next.js新手,也能轻松上手! 借助AI工具,如GPTeach,学习过程将更加高效。 Next.js简介 Next.js是一个流行的开源React框架,它简化了服务器端渲染(SSR) React…

    2025年12月9日
    000
  • PHP 设计模式:页面控制器

    页面控制器设计模式是基于 web 的系统中使用的常见架构方法。它通过专用特定控制器来处理单个页面或请求的逻辑来组织控制流。这种方法有助于隔离职责,使代码库更易于维护和发展。 什么是页面控制器? 在页面控制器模式中,每个页面(或一组具有类似行为的页面)都有自己的控制器,负责: 处理请求:处理客户端发送…

    2025年12月9日
    000
  • 学习PHP 8需要哪些资源

    学习 PHP 8 的最佳资源包括官方文档、入門指南、線上學習平台(Udemy 和 Coursera)、書籍、PHPStorm 工具、Composer 包管理器、Laravel 和 Symfony 框架,以及 Stack Overflow 和 PHP 官方論壇等社群。熟練掌握 PHP 8 需要持續學習…

    2025年12月9日
    000
  • PHP 8 性能基准测试

    PHP 8 的性能基准测试显示其性能显着优于 PHP 7.4,整体得分为 13.71,提高了 25%。具体性能改进包括:Laravel 数据库查询速度提高 23.5%、WordPress 响应时间提高 16.4% 以及 MySQL 处理速度提高 18.7%。这些改进归因于 PHP 8 的 JIT 编…

    2025年12月9日
    000
  • 我为什么喜欢 Laravel:初学者的观点

    当我第一次开始 web 开发时,我努力寻找一个既易于学习又足够强大以适合实际项目的框架。然后,我发现了 laravel,它彻底改变了我构建应用程序的方式。这就是我喜欢 laravel 以及你也应该考虑使用它的原因: 1。易于上手laravel 的文档非常棒。如果您是初学者,只需几个命令即可开始: c…

    2025年12月9日
    000
  • PHP 中的 CSRF 保护

    什么是 csrf? 跨站请求伪造 (csrf) 是一种网络安全漏洞,攻击者可以利用该漏洞诱骗经过身份验证的用户在他们当前登录的网站上执行不需要的操作。该攻击通过利用网站所拥有的信任来进行在用户的浏览器中。 csrf 攻击如何运作 用户登录合法网站 a 并收到会话 cookie用户在仍登录 a 的情况…

    2025年12月9日
    000
  • 如何修复 Laravel 中的目标类不存在错误

    当 laravel 无法找到所引用的类时,通常会发生“目标类不存在”错误,特别是在涉及依赖注入或服务容器绑定的情况下。 常见原因: 控制器或模型文件中的命名空间不正确。服务容器绑定未正确注册。自动加载缓存已过时。 分步解决方案:1.检查类命名空间确保文件中的命名空间与文件夹结构匹配。 // exam…

    2025年12月9日
    000
  • Symfony 监控库实现

    在过去的几个月里,我投入了大量精力来改进 symfony 开发人员的监控体验。 symfony 监控库是 inspector 客户中第二受欢迎的库。第一个是 laravel 包。 最新版本框架的发布带来了让应用监控体验变得前所未有的简单的机会。 在本文中,我将详细介绍这些更改是什么,以及它们对您在 …

    2025年12月9日
    000
  • 可修剪的雄辩模型

    自 laravel 8.5 以来,框架中添加了一个特征,允许您根据日期修剪模型。这个trait 称为 illuminatedatabaseeloquentprunable,它允许您根据日期修剪模型。 当您想要根据日期删除模型时,此特征非常有用。例如,您可能有一个模型存储日志,并且您想要删除早于特定日…

    2025年12月9日
    000
  • 为什么 Laravel 是现代 Web 应用程序的首选框架

    您的项目的成功取决于您选择的框架。人们可能很容易对众多可用的替代方案感到不知所措。不过,laravel 是一个不断脱颖而出的框架。无论项目有多复杂,laravel 都已成为现代 web 开发的首选框架。 但为什么它变得如此出名呢?让我们来看看是什么因素促使 laravel 成为全球开发者的热门选择。…

    2025年12月9日
    000
  • 2025 年 10 大 PHP REST API 框架

    PHP 框架是预先编写的代码库、工具和最佳实践的集合,它们提供了使用 PHP 编程语言构建 Web 应用程序的结构化和标准化方法。它通过提供可重用组件、预定义模板以及简化数据库处理、URL 路由和身份验证等常见任务的功能来简化开发过程。 1. Laravel 概述:Laravel 是一个功能丰富、流…

    2025年12月9日
    000
  • Lumen路由控制器跳转:如何实现IDE直接跳转及提示?

    直接点击 lumen 路由控制器跳转到相关文件 在 lumen 中设置路由时,可以通过以下方式直接点击控制器跳转到相关文件: 在 bootstrap/app.php 中修改 $app 变量的初始化: $app = new class (dirname(__dir__)) extends larave…

    2025年12月9日
    000

发表回复

登录后才能评论
关注微信