讲师中心 微信公众号
AI工具推荐 视频效率加速

XAMPP环境下多端口部署VuePress

千强君_2154

千强君_2154

发布时间:2026-05-03 19:32:05

|

888人浏览过

|

来源于php中文网

原创

可行,但必须先用 vuepress build 生成静态文件,再通过 Apache 多端口虚拟主机托管;不可直接接入 vuepress dev 服务,因其为独立 Node 进程,与 Apache 无关联。

xampp环境下多端口部署vuepress

VuePress 本身是静态站点生成器,不依赖后端服务,但若你希望在 XAMPP 的 Apache 上托管多个 VuePress 站点(比如不同文档项目、测试环境、预发布分支),并用不同端口区分访问,**可行,但必须绕过 VuePress 的开发服务器(vuepress dev),只部署构建后的静态文件**。直接用 vuepress dev 启动的本地服务(如 http://localhost:8080)和 XAMPP 的 Apache 是两套独立进程,无法共用端口或被 Apache 反向代理到 VuePress dev server——除非你手动配 mod_proxy,但那已脱离“XAMPP 多端口托管静态站”的本意。

为什么不能直接把 vuepress dev 接入 XAMPP 端口

VuePress 开发服务器是基于 webpack-dev-server 或 Vite 的,它监听的是自己的 Node.js 进程端口(默认 8080),和 Apache 完全无关。XAMPP 的 Listen 指令只对 Apache 自身生效,不会转发请求给另一个进程。强行让 Apache ProxyPass 到 localhost:8080 虽技术上可做,但会引入额外故障点(Node 进程挂掉、跨域、热更新失效、404 路由 fallback 失效),且违背 VuePress “静态部署”设计初衷。

所以真正可靠的做法是:先 vuepress build 出 .vuepress/dist 目录,再把该目录作为纯静态资源,交给 Apache 通过多端口虚拟主机托管。

配置 Apache 多端口虚拟主机托管 VuePress 构建产物

假设你有两个 VuePress 项目:

立即学习“前端免费学习笔记(深入)”;

  • my-docs-a 构建后路径:C:/xampp/htdocs/docs-a
  • my-docs-b 构建后路径:C:/xampp/htdocs/docs-b

按以下步骤操作:

1. 修改 C:\xampp\apache\conf\httpd.conf,在已有 Listen 80 行下方添加:

Listen 8080
Listen 8081

2. 确保 httpd.conf 中这行未被注释:

Ainative Vue Sdk
Ainative Vue Sdk

使用 `@ainative/vue-sdk` 为 Vue 3 应用添加 AI 聊天功能。适用于以下场景:(1) 安装 `@ainative/vue-sdk`,(2) 在 Vue 组件中使用 `useChat` 组合式函数,(3) 提供……

下载
Include conf/extra/httpd-vhosts.conf

3. 编辑 C:\xampp\apache\conf\extra\httpd-vhosts.conf,追加:

<VirtualHost *:8080>
    ServerName localhost:8080
    DocumentRoot "C:/xampp/htdocs/docs-a"
    <Directory "C:/xampp/htdocs/docs-a">
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>
<p><VirtualHost *:8081>
ServerName localhost:8081
DocumentRoot "C:/xampp/htdocs/docs-b"
<Directory "C:/xampp/htdocs/docs-b">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>

⚠️ 注意点:

  • AllowOverride All 必须启用,否则 VuePress 的客户端路由(如 /guide/)在刷新时会 404(Apache 默认不解析 .htaccess,而 VuePress 的 history 模式依赖它 fallback 到 index.html)
  • 如果 docs-a 或 docs-b 是子目录(比如 docs-a/guide/),需在 config.js 中设置 base: '/docs-a/',否则资源路径(CSS/JS)会 404
  • Windows 路径中反斜杠 \ 必须换成正斜杠 /,否则 Apache 启动失败

解决 VuePress 静态资源 404 和路由刷新 404

即使配置了多端口,访问 http://localhost:8080/guide/ 仍可能报 404,这是因为:

  • Apache 尝试找物理路径 /guide/ 下的 index.html,但 VuePress 的 guide/ 是前端路由,真实文件只在根目录 index.html
  • 需要 Apache 把所有非资源请求 fallback 到 index.html

做法是在每个 VuePress 项目的 dist 根目录下放一个 .htaccess 文件(内容如下):

RewriteEngine On
RewriteBase /
RewriteRule ^index\.html$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.html [L]

同时确保 httpd-vhosts.conf 中对应 <Directory> 块里有 AllowOverride All(见上一节),否则 Apache 忽略该文件。

若不想用 .htaccess,也可把 rewrite 规则写进 <Directory> 块内(需启用 mod_rewrite):

<Directory "C:/xampp/htdocs/docs-a">
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.html$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.html [L]
</Directory>

重启 Apache 后仍打不开?重点检查三处

常见卡点不是配置语法错,而是权限与路径细节:

  • Windows 防火墙或杀毒软件拦截了 8080/8081 端口(尤其某些国产安全软件会静默封禁非标准端口)
  • DocumentRoot 路径末尾**不要加斜杠**:"C:/xampp/htdocs/docs-a" ✅,"C:/xampp/htdocs/docs-a/" ❌(Apache 会报 syntax error)
  • VuePress 构建前没设 base,导致 CSS/JS 请求地址是 http://localhost:8080/assets/xxx.css(正确),但如果部署在子路径如 http://localhost:8080/docs-a/,就必须在 config.js 写 base: '/docs-a/',否则资源 404
  • 修改完配置后,XAMPP 控制面板里要点击 Apache → Stop 再 Start,仅 “Restart” 有时不重载 httpd-vhosts.conf

多端口本质是 Apache 的基础能力,难点不在“能不能”,而在 VuePress 的静态特性与 Apache 的路径/重写规则之间是否对齐——尤其是 base、.htaccess、AllowOverride 这三者必须协同生效,漏一不可。

热门AI工具

更多
UpDream
UpDream Hot

一款AI视频创作工具,主要用于哔哩哔哩推出的自研AI视频创作工具,适合需要提升相关任务效率的用户。

火山引擎

火山引擎是一款面向企业的云计算与AI服务平台。

AionClaw
AionClaw Hot

AionClaw是一款面向办公、创作和编程任务的AI桌面智能体。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

Lovart
Lovart Hot

一款面向视觉设计创作的AI设计平台,可通过智能体和画布工作流辅助制作海报、Logo、网页、PPT及其他视觉内容。

蛙蛙写作

一款AI论文写作工具,主要用于超级AI智能写作助手,适合需要提升相关任务效率的用户。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

墨刀AI
墨刀AI Hot

一款AI图像与设计工具,主要用于产品经理的专属智能体,适合需要提升相关任务效率的用户。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

相关专题

更多
XAMPP用法详解
XAMPP用法详解

本专题整合了XAMPP相关用法介绍,阅读专题下面的文章了解更多详细内容。

253

2026.04.08

XAMPP 安装与快速入门指南
XAMPP 安装与快速入门指南

面向零基础用户,详细介绍 XAMPP 在 Windows、macOS、Linux 三大平台上的下载、安装步骤、首次启动配置、控制面板使用以及 Apache/MySQL 服务的基本启停操作,帮助初学者在最短时间内搭建起可用的本地开发环境。

230

2026.04.08

XAMPP Apache 与 MySQL 核心配置实战
XAMPP Apache 与 MySQL 核心配置实战

深入讲解 XAMPP 中 Apache 和 MySQL 的核心配置技巧,包括 httpd.conf 端口修改、虚拟主机(VirtualHost)多站点配置、MySQL 用户权限管理与远程连接设置、php.ini 关键参数调优,以及 SSL 证书的本地配置方法,适合有一定基础的开发者进阶使用。

445

2026.04.08

XAMPP 本地项目部署与调试全流程
XAMPP 本地项目部署与调试全流程

以 WordPress、Laravel、ThinkPHP 等主流 PHP 框架和 CMS 为例,演示如何在 XAMPP 环境中完成项目部署、本地域名绑定(hosts配置)、数据库导入、伪静态规则配置以及 Xdebug 断点调试的完整流程,让本地开发与线上环境无缝衔接。

122

2026.04.08

XAMPP 常见问题排查与故障解决
XAMPP 常见问题排查与故障解决

汇总 XAMPP 使用过程中最常遇到的故障场景及其解决方案,涵盖 80/443 端口被占用、Apache 或 MySQL 无法启动、phpMyAdmin 访问报错、文件权限不足、日志分析方法等问题,提供逐步排查思路与一键修复技巧,减少开发者的排错时间。

310

2026.04.08

XAMPP 安全加固与生产环境迁移
XAMPP 安全加固与生产环境迁移

聚焦 XAMPP 的安全实践与环境迁移,包括修改 MySQL 默认 root 密码、关闭目录列表浏览、限制 phpMyAdmin 外部访问、配置防火墙规则等安全加固措施,同时讲解如何将 XAMPP 本地开发完成的项目平滑迁移部署到 Linux 生产服务器。

284

2026.04.08

XAMPP 与 phpMyAdmin 数据库管理实操
XAMPP 与 phpMyAdmin 数据库管理实操

专注于 XAMPP 内置的 phpMyAdmin 数据库管理工具,系统讲解数据库和数据表的创建与设计、SQL 语句执行、CSV/SQL 格式数据的导入导出、定时备份与一键还原、多数据库批量管理等日常操作,帮助开发者高效管理本地 MySQL 数据。

335

2026.04.08

PixTV官网入口地址合集
PixTV官网入口地址合集

本专题汇总了 PixTV AI 一站式视频创作平台的官方入口与使用教程。无需下载软件,浏览器直接访问即可使用。平台将剧本、图像、视频、声音与剪辑整合在“无限画布”中,接入 GPT Image 2.5、Seedance 2.5 等头部模型。本专题整理了从新建画布、角色锚定、分镜拆分到视频生成与导出的完整操作指南,助你快速上手 AI 短剧与漫剧创作。

80

2026.10.10

Kratos框架HTTP与gRPC服务开发教程
Kratos框架HTTP与gRPC服务开发教程

本专题围绕Kratos框架双协议服务开发,涵盖HTTP路由与处理器编写、参数获取、gRPC服务实现与客户端调用、metadata上下文传递、encoding编解码注册、统一响应封装、超时控制与流式响应实现方法。

40

2026.10.10

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn