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

Laravel 10+XAMPP内网SSL配置后显示目录列表问题求助

问题分析与解决步骤

核心问题

你当前的配置存在两个关键问题:一是Apache虚拟主机的DocumentRoot未指向Laravel的Web入口目录public,导致访问时显示项目根目录列表;二是同时启动了Apache虚拟主机和Laravel内置服务器(php artisan serve),端口冲突且内置服务器未正确加载SSL配置。


1. 修正Apache虚拟主机配置

编辑C:/xampp/apache/extra/httpd-vhosts.conf,将配置修改为:

<VirtualHost *:444>
    DocumentRoot "C:/xampp/htdocs/project/public"
    ServerName abc.example.com
    SSLEngine on
    SSLCertificateFile "conf/ssl.crt/22112022.cer"
    SSLCertificateKeyFile "conf/ssl.crt/22112022-rsa.key"
    SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1
    <Directory "C:/xampp/htdocs/project/public">
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

修改说明:

  • 将DocumentRoot改为项目下的public目录(Laravel的Web请求入口)
  • ServerName无需携带端口,VirtualHost监听*:444即可覆盖所有IP
  • 优化SSL协议,禁用老旧不安全的TLS版本(可选但推荐)
  • 同步更新Directory路径至public目录

2. 启用Apache必要模块

打开C:/xampp/apache/conf/httpd.conf,确保以下模块未被注释(去掉行首的#):

LoadModule rewrite_module modules/mod_rewrite.so
LoadModule ssl_module modules/mod_ssl.so

同时确认虚拟主机配置文件已被加载:

Include conf/extra/httpd-vhosts.conf

3. 重启服务,停止冲突进程

  • 关闭正在运行的php artisan serve进程(按Ctrl+C)
  • 在XAMPP控制面板中重启Apache服务

4. 测试访问

直接访问https://abc.example.com:444,此时应正常加载Laravel项目首页,而非目录列表。


额外说明

Laravel内置服务器(php artisan serve)仅适合本地开发测试,不支持直接加载SSL证书,内网正式环境优先使用Apache/Nginx等Web服务器配置虚拟主机,稳定性和性能更优。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 08:34:59