server

简介

远程仓库服务器端设置。

vb server [OPTIONS] [REPOSITORY]

说明

打开套接字并开始监听和响应 TCP 端口 8080 或 -P|--port 选项定义的其他 TCP 端口上的 HTTP 请求。

ui 命令在初始化 Web 服务器后自动启动 Web 浏览器。ui 命令还绑定 127.0.0.1,因此仅处理来自本地计算机的 HTTP 流量。

REPOSITORY 参数说明:

  • 若 REPOSITORY 参数以 HOST:USER@HOST: 前缀开头,则命令将在指定的远程主机上运行,结果将通过 SSH 隧道传输回本地计算机。此功能仅适用于 ui 命令,不适用于 server 命令。

远程主机上的 VisionByte 可执行文件的名称由 --vbcmd 选项指定,如果没有 --vbcmd 选项,则首先尝试输入 vb , 如果在远程 SSH 设置的默认 $PATH 中找不到它,则将 $HOME/bin:/usr/local/bin:/opt/homebrew/bin 添加到 PATH 并再次尝试运行 vb

  • REPOSITORY 也可能是一个目录(又称文件夹),其中包含一个或多个名称以 .vbyte 结尾的仓库。在这种情况下,URL 路径名的前缀用于在目录中搜索合适的仓库。为了防止恶意行为,URL 中的路径名必须仅包含字母、数字、 _/- ,并且 / 后不能出现 - ,每个 两侧都必须由字母数字包围。任何不满足这些限制的路径名都会导致 404 错误。

REPOSITORY 与 --files 列出的 glob 模式列表匹配且具有已知后缀(例如 .txt.html.jpeg )且与模式 *.vbyte* 不匹配的文件将作为静态内容提供。

注意,如果存在 --notfound 选项,则 REPOSITORY 只能是目录。

  • 若 REPOSITORY 参数是仓库名称,则使用对应仓库,如果省略 REPOSITORY 参数,将使用与该工作副本关联的仓库。这仅适用于 ui 命令,不适用于 server 命令。

  • 对于特殊情况的仓库 / ,将查阅全局配置数据库以获取所有已知仓库的列表。此特殊情况等同于 --repolist 选项。vb ui / 相当于 vb all ui 。要通过 ssh 查看 远程 计算机上 用户 拥有的所有仓库,可使用 vb ui user@remote:/

总之:

默认情况下,ui 命令提供完全管理访问权限,无需登录,但也可以通过 localauth 来禁用此功能。

如果存在 --localauth 选项但是 localauth 设置已关闭且连接来自本地主机,则可以使用 server 命令的自动登录。

默认情况下,ui 命令还自启用 --repolist 选项。

选项

--acme

.well-known 子目录传递文件

--baseurl URL

使用 URL 作为基础(对于反向代理有用)

--cert FILE

使用从指定文件中获取的证书 (fullchain.pem) 进行 TLS (HTTPS) 加密。

--chroot DIR

使用目录进行 chroot 而不是仓库路径

--ckout-alias NAME

将形式为 /doc/NAME/... 的 URI 视为 /doc/ckout/...

--create

如果 REPOSITORY 尚不存在,则创建新的 REPOSITORY

--errorlog FILE

将 HTTP 错误消息附加到文件

--extroot DIR

/ext 扩展机制的文档根目录

--files GLOBLIST

静态文件的 glob 模式的列表

--vbcmd PATH

当 REPOSITORY 为远程时,远程系统上 vb 可执行文件的路径名

--localauth

启用来自本地主机的请求的自动登录

--localhost

仅在 127.0.0.1 上监听( ui 始终打开)

--https

表示输入来自已将 HTTPS 转换为 HTTP 的反向代理。

--jsmode MODE

确定 JavaScript 如何随页面一起传递。模式可以是以下三个:inline :所有 JavaScript 均以内联形式插入到 HTML 文件的末尾; separate :每个 JavaScript 文件都会发出单独的 HTTP 请求; bundled :一个单独的 HTTP 获取连接在一起的所有 JavaScript。

inline

所有 JavaScript 均以内联形式插入到 HTML 文件的末尾。

separate

每个 JavaScript 文件都会发出单独的 HTTP 请求。

bundled

一个单独的 HTTP 获取连接在一起的所有 JavaScript。

--mainmenu FILE

使用给定文件的内容覆盖主菜单配置设置

--max-latency N

不要让任何单个 HTTP 请求运行超过 N 秒(仅适用于 unix)

-B|--nobrowser

不为 vb ui 命令自动启动网络浏览器

--nocompress

不压缩 HTTP 回复

--nojail

放弃 root 权限但不进入 chroot jail

--nossl

即使仓库设置 redirect-to-https 要求,也不要强制重定向到 SSL。这是 ui 命令的默认设置。

--notfound URL

如果找不到页面,则重定向到 URL。

-p|--page PAGE

在 PAGE 上启动服务器端。例如:--page "timeline?y=ci"

--pkey FILE

从文件中读取用于 TLS 的私钥

-P|--port [IP:]PORT

监听给定的 IP(可选)和端口

--repolist

如果 REPOSITORY 是目录,URL / 列出使用仓库

--scgi

接受 SCGI 而不是 HTTP

--skin LABEL

使用覆盖皮肤标签

--th-trace

跟踪 TH1 执行(用于调试目的)

--usepidkey

使用父进程保存的加密密钥。这仅在 Windows 或 Linux 上使用 SEE 时才有必要。

参见

ui , cgi, http