feat: 优化网络绑定配置支持外部访问
主要修改点: 1. 网络绑定调整 - .env.example: WEB_HOST/VITE_WEB_HOST 从 127.0.0.1 改为 0.0.0.0 - server/src/app/core/config.py: 默认 web_host 从 127.0.0.1 改为 0.0.0.0 - web/package.json: Vite 脚本 host 从 127.0.0.1 改为 0.0.0.0 - web/vite.config.js: normalizeState 中 WEB_HOST 默认值从 127.0.0.1 改为 0.0.0.0 2. CORS 配置扩展 - .env.example: CORS_ORIGINS 添加 http://0.0.0.0:5173 3. Shell 脚本权限修复 - server/start.sh, start.sh: 添加可执行权限 (644 -> 755) 4. Setup 表单与验证逻辑简化 - web/src/composables/useSetupView.js: - 新增 readCurrentWebEndpoint() 从 window.location 自动检测当前 web host/port - 简化 runtimeInputsReady: 移除 web_host/web_port 必填验证,仅保留 server_host/server_port - 简化 buildRuntimeFingerprint(): 移除 web_host/web_port - buildPayload() 改用 readCurrentWebEndpoint() 解析 web 配置 - web/vite.config.js: - 新增 resolveRuntimePayload(): 运行时解析 web_host/web_port - 移除 validateRuntimePayload() 中的 web_host/web_port 字段验证 - 移除 testRuntimePorts() 中 web 端口冲突检测逻辑 - 移除 canReuseCurrentWebPort() 函数 5. CSS 清理 - web/src/assets/styles/views/setup-view.css: 移除未使用的 .setup-summary-grid 和 .setup-summary-item 样式
This commit is contained in:
@@ -126,20 +126,10 @@
|
||||
<section v-else-if="activeSection === 'runtime'" class="setup-stage">
|
||||
<div class="section-head">
|
||||
<h3>运行端口配置</h3>
|
||||
<p>这一步只检测 Web 和 Server 端口占用情况,不检测数据库。</p>
|
||||
<p>Web 地址由当前已启动的前端实例自动确定,这一步只需要配置并检测后端端口。</p>
|
||||
</div>
|
||||
|
||||
<div class="field-grid field-grid-2">
|
||||
<label class="field">
|
||||
<span>Web Host</span>
|
||||
<input v-model.trim="form.web_host" type="text" placeholder="127.0.0.1" required />
|
||||
</label>
|
||||
|
||||
<label class="field">
|
||||
<span>Web Port</span>
|
||||
<input v-model.number="form.web_port" type="number" min="1" max="65535" required />
|
||||
</label>
|
||||
|
||||
<label class="field">
|
||||
<span>Server Host</span>
|
||||
<input v-model.trim="form.server_host" type="text" placeholder="127.0.0.1" required />
|
||||
@@ -210,15 +200,6 @@
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div class="setup-summary-grid">
|
||||
<article v-for="item in summaryItems" :key="item.label" class="setup-summary-item">
|
||||
<div>
|
||||
<strong>{{ item.label }}</strong>
|
||||
<span>{{ item.detail }}</span>
|
||||
</div>
|
||||
<i :class="['pi', item.complete ? 'pi-check-circle' : 'pi-clock']"></i>
|
||||
</article>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<p v-if="currentTestMessage" :class="['setup-status', currentTestPassed ? 'is-success' : 'is-danger']">
|
||||
@@ -306,7 +287,6 @@ const {
|
||||
showTestAction,
|
||||
submitForm,
|
||||
submitHint,
|
||||
summaryItems,
|
||||
testButtonIcon,
|
||||
testButtonLabel,
|
||||
testSetup
|
||||
|
||||
Reference in New Issue
Block a user