Linux

Linux

目录

本页将指导你完成在使用 LAMP 栈(即 Linux、Apache、MySQL 和 PHP)的 Linux Web 服务器上安装 Wavelog 所需的各个步骤。服务器的具体配置很大程度上由你自行决定,例如可选的 Linux 发行版就有很多。本指南以 Debian / Ubuntu 为重点,因此这里的说明可能不适用于其他发行版。

前提条件

  • 任何能够满足其他前提条件的现代 Linux 安装。
  • 推荐:

    • Debian 12 或 13
    • Ubuntu 24.04
  • Web 服务器(例如 Apache >= 2.4 或 nginx)

  • MySQL 或 MariaDB
  • 必须提供 InnoDB 并将其设为默认引擎
  • PHP <= 8.3+ 及相应模块(8.5 似乎也能正常工作):
  • php-curl
  • php-mbstring
  • php-mysql
  • php-xml
  • php-zip
  • php-gd
  • php-redis(如果你想用 redis 作为缓存提供方)

  • 当然还需要一个 Web 浏览器。

  • 视口的绝对最低分辨率:1024x768(无官方支持!)
  • 浏览器视口的推荐最低分辨率:>=HD

安装

1. 准备 LAMP 栈

Debian

安装合适的操作系统、数据库服务器和 Web 服务器不在本指南的范围内,但有大量资源可以帮助你起步。可以参考 DigitalOcean 的这些指南来搭建 Debian 或 Ubuntu LTS。

装好 LAMP 栈之后,请确保所需的 PHP 模块可用,因为并非所有模块都会默认安装:

sudo apt install php-curl php-mysql php-mbstring php-xml php-zip php-gd php-apcu

如果你把 Apache2 用作 Web 服务器,可能还需要

sudo apt install libapache2-mod-php

用 php -v 检查已安装的版本。推荐的最低版本是 PHP 8.3

注意

nginx 配置

如果你用 nginx 作为 Web 服务器,就需要确保 PHP 处理器能正确处理 .php,而不只是在地址以 .php 结尾时才处理。参见 这个问题。配置中的基本改动是(去掉美元符号):

conf # pass PHP scripts to FastCGI server # - location ~ \.php$ { + location ~ \.php { ⚠️ 修改该值之后,请重启 nginx Web 服务器,再继续安装。

Arch Linux / Manjaro Linux

# to install the LNMP stack and dependencies, you can run this command
sudo pacman -S git nginx php-fpm php-gd php-apcu php mariadb
# this will initialize mariadb - do not execute it if you have already databases running!
mariadb-install-db --user=mysql --basedir=/usr --datadir=/var/lib/mysql
# restart mariadb
systemctl restart mariadb

编辑 /etc/php/php.ini 并取消以下行的注释

extension=gd
extension=mysqli

2. 使用 Git 下载 Wavelog

为了便于安装和更新,建议使用 Git 获取 Wavelog 应用文件。你的 Linux 发行版很可能已经安装了 Git。如果没有,请用 sudo apt-get install git 来获取。

git clone 命令用于从 GitHub 上的仓库获取 Wavelog 的最新构建。--depth 1 选项会减少下载的数据量(你通常不需要完整的提交历史)。该命令会下载 master 分支上当前状态的应用文件:

git clone --depth 1 https://github.com/wavelog/wavelog.git [output_directory]

把 output_directory 替换为你想在本地创建应用文件的目录的完整路径(不要包含方括号)。例如,如果你为 Apache 配置了一个以 /var/www/html 作为 DocumentRoot 目录的站点,那么命令就变成
git clone --depth 1 https://github.com/wavelog/wavelog.git /var/www/html
有关站点配置的更多信息,请参见 Web 服务器配置。

3. 设置目录所有权与权限

在正常运行时,Wavelog 需要写入 Wavelog 根目录(即你在上一步解压文件的位置)内的某些文件和目录。你需要为这些目录正确设置权限和所有权。

以下文件夹需要对 PHP 可写:

  • /application/config/
  • /application/logs/
  • /backup/
  • /updates/
  • /uploads/
  • /images/eqsl_card_images/

⚠️ 警告 1:以下命令假设你使用的是 Ubuntu/Debian 默认的 www-data Web 服务器用户组。你应当确认情况确实如此——尤其是在使用其他发行版时——如果并非如此,请相应修改下面的命令。

⚠️ 警告 2:如果你在上一步把 Git 仓库克隆到了其他位置,请把下面命令中的 /var/www/html 替换为相应的目录!

⚠️ 警告 3:确保你的系统免受入侵/攻击是你自己的责任。这些命令和权限只是为了让 Wavelog 跑起来而给出的示例,并不是实现安全系统的指南。安装后你应当复查这些权限,如果你认为需要更细粒度的访问控制,请做相应修改。

设置基本权限(在大多数情况下可行)。别忘了调整目录:

directory=/var/www/html

# debian
sudo chown -R www-data:www-data $directory
# arch linux / manjaro linux
sudo chown -R http:http $directory

# change permissions of directories and files
sudo find $directory -type d -exec chmod 755 {} \;
sudo find $directory -type f -exec chmod 664 {} \;

这些权限在你的环境中可能有所不同!

4. 创建 SQL 数据库与用户

Wavelog 需要一个 MySQL 数据库来存储应用设置、用户设置,以及日志等用户数据。

创建空白数据库的基本步骤对 MySQL 和 MariaDB 而言非常相似——这里会介绍这些步骤——但涉及数据库与服务器安全加固的具体步骤则有所不同。与 Apache 配置一样,后面这些步骤不在本指南的范围内,但你可以参考 MariaDB 文档 或 MySQL 文档 作为起点。

我们先使用 mysql 命令以 root 用户连接。如果你的服务器已经为其他用途做过配置,那么你可能已有另一个具备创建数据库权限的用户——如果是这样,你可以改用该用户名。关于使用 mysql 客户端连接的更多内容,请参见 MySQL 文档。

MySQL:sudo mysql -u root -p

MariaDB:sudo mariadb -u root -p

现在执行以下命令为 Wavelog 创建数据库,把 db_name 替换为你选定的名称,例如 wavelog。请记下这个名称,稍后 Wavelog 安装向导会用到它。

CREATE DATABASE db_name;

接下来创建一个用户,并授予它在 Wavelog 数据库上的权限。如果你在 MySQL/MariaDB 服务器上已经有一个有效的非 root 用户,那么创建新用户是可选的。请记住再次把 db_name 替换为你之前为数据库选定的名称,把 user1 替换为要创建的用户名(例如 waveloguser),把 password1 替换为一个真实、强壮的密码!请妥善保管用户名和密码,稍后 Wavelog 安装程序会用到它们。

CREATE USER 'user1'@localhost IDENTIFIED BY 'password1';
GRANT ALL PRIVILEGES ON db_name.* TO 'user1'@'localhost';
QUIT

5. 配置 Web 服务器

按照 Web 服务器配置 页面配置你所选择的 Web 服务器。

6. 运行 Wavelog 安装程序

你需要运行安装程序。此时请打开 <url-to-wavelog>/install 并按照指南操作。

  • 如果你想知道与你通联的人是否使用 LoTW,请运行:https://<URL-To-Wavelog>/index.php/update/lotw_users。这是首次运行,但稍后我们会通过 cron 每周运行一次。

安装后任务

创建计划任务(cron)以自动化 Wavelog 任务

你可以用计划任务来自动执行一些常规的 Wavelog 维护工作。相关说明请参见推荐的计划任务与 Cronmanager。

首次登录之后,你还需要在 Wavelog 中完成一些设置。按照仪表盘上的警告提示操作即可。

Wavelog 手册(中文版) / Linux 0 字 0 行 bg8lng
2026-10-21T12:42:35.074121679Z 2026-10-21T12:42:55.769034292Z