You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Laravel Sail环境中启用SSL

Laravel Sail 共享站点启用SSL访问操作指南

方案1:使用官方默认共享服务(优先选择)

sail share 底层基于Laravel官方维护的Expose隧道服务,新版本默认提供SSL支持,按以下操作即可:

  • 先升级Laravel Sail到v1.14.0及以上版本,执行命令:
    composer require laravel/sail --dev
  • 升级完成后直接执行共享命令:
    sail share
  • 生成的https://*.expose.dev格式的访问地址默认已支持SSL协议,可直接通过HTTPS访问
  • 如果需要固定前缀的共享地址,可执行带参数的命令:
    sail share --subdomain=自定义前缀 --region=ap

方案2:自定义域名+SSL共享配置

如果需要使用自己的专属域名共享站点,可按以下步骤配置:

1. 配置Sail容器支持HTTPS访问

  • 首先在项目根目录的docker-compose.yml文件中,给laravel.test服务新增443端口映射:
services:
  laravel.test:
    ports:
      - '${APP_PORT:-80}:80'
      - '443:443' # 新增此行
  • 在项目storage目录下新建ssl文件夹,用于存放SSL证书,执行命令生成自签名证书:
    docker run --rm -v "$(pwd):/app" alpine/openssl req -x509 -newkey rsa:4096 -keyout /app/storage/ssl/server.key -out /app/storage/ssl/server.crt -days 365 -nodes -subj "/CN=你的自定义域名"
  • 执行命令发布Sail的Nginx配置文件:
    sail sail:publish
  • 编辑生成的docker/nginx/conf.d/default.conf文件,新增443端口的SSL监听配置:
server {
    listen 443 ssl;
    server_name 你的自定义域名;
    root /var/www/html/public;

    ssl_certificate /var/www/html/storage/ssl/server.crt;
    ssl_certificate_key /var/www/html/storage/ssl/server.key;

    # 下方其余配置和文件内原有80端口的server配置保持一致即可
}
  • 重启Sail服务生效配置:
    sail restart

2. 共享配置完成的HTTPS站点

  • 本地安装ngrok客户端后,直接执行命令:
    ngrok http https://localhost
  • 生成的ngrok HTTPS链接即可通过SSL协议对外共享你的测试站点

内容的提问来源于stack exchange,提问作者Patrick Quijano

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.20 05:15:09