帮助中心
如何在Debian 12上安装荔枝照片管理系统

如何在Debian 12上安装荔枝照片管理系统


Lychee 是一款基于 PHP 和 MySQL 的开源照片管理软件。它是一款自托管照片管理软件,可让您在服务器上安全地上传、浏览和共享照片。


在本教程中,你将学习如何在 Debian 12 服务器上安装荔枝照片管理。您将使用 LAMP Stack 运行荔枝,并通过 Certbot 和 Letsencrypt 使用 HTTPS 确保荔枝的安全。


前提条件


开始之前,请确保您具备以下条件:


  • Debian 12 服务器
  • 具有管理员权限的非 root 用户


安装依赖项


在本节中,您将在 Debian 服务器上安装 LAMP Stack(Linux、Apache、MariaDB 和 PHP)。目前,Lychee 支持 PHP 8.2 或更高版本,Debian 代码库中默认提供了 PHP 8.2。


首先,运行下面的命令更新 Ubuntu 软件包索引。

sudo apt update


现在使用以下命令在 Debian 系统中安装 LAMP Stack 软件包。输入 “Y ”确认安装。

sudo apt install apache2 mariadb-server php-cli php-intl php-xmlrpc php-soap php-mysql php-zip php-gd php-tidy php-mbstring php-curl php-xml php-pear php-bcmath php-imagick php-tokenizer libapache2-mod-php


安装完成后,执行以下命令检查 Apache 服务状态。你会看到 Apache 网络服务器正在运行并已启用。

sudo systemctl is-enabled apache2
sudo systemctl status apache2



现在使用以下命令检查 MariaDB 服务器。MariaDB 服务器应该正在运行,并在系统中自动启用。

sudo systemctl is-enabled mariadb
sudo systemctl status mariadb


最后,用以下命令检查 PHP 版本 - 可以看到 PHP 8.3 已安装。

php -v
php -m


配置 PHP


安装好依赖项后,编辑 “php.ini ”文件配置 PHP,然后重启 Apache 网络服务器即可生效。

使用 “nano ”编辑器打开“/etc/php/8.3/apache2/php.ini ”文件。

sudo nano /etc/php/8.3/apache2/php.ini

像这样更改默认配置 - 确保相应调整 “memory_limit ”和 “date.timezone ”选项。

date.timezone = Europe/Amsterdam
memory_limit = 256M

upload_max_filesize = 64MB
post_max_size = 64MB

完成后,保存文件并退出编辑器。


现在运行下面的 “systemctl ”命令重启 Apache 网络服务器并应用更改。

sudo systemctl restart apache2


配置 MariaDB 服务器


配置好 PHP 后,使用 “mariadb-secure-installation ”命令保护 MariaDB 服务器。然后,通过 “mariadb ”客户端为荔枝创建一个新的数据库和用户。


执行下面的 “mariadb-secure-installation ”命令来设置 MariaDB 服务器。

sudo mariadb-secure-installation

现在,你会被要求进行以下 MariaDB 配置:


  • 默认安装的 MariaDB 服务器没有根密码,在询问密码时按 ENTER 键。
  • 默认情况下,MariaDB root 用户的本地身份验证是安全的,当被要求将身份验证方法更改为 “unix_socket ”时,请输入 “n”。
  • 输入 “Y ”创建新的 MariaDB 根密码。然后,输入 MariaDB 根用户的强密码并重复。
  • 当被要求禁用 MariaDB 根用户的远程身份验证时,输入 “Y ”表示同意。
  • 默认安装的 MariaDB 服务器自带数据库 “test”,允许匿名用户访问。
  • 在这两项设置中都输入 “Y”,以删除默认数据库 “test ”和匿名权限。
  • 最后,输入 “Y ”确认重载表权限。


配置好 MariaDB 并确保其安全后,你将创建一个新的数据库和用户,供荔枝安装使用。


使用下面的 “mariadb ”命令登录 MariaDB 服务器。根据提示输入 MariaDB 根密码。

sudo mariadb -u root -p

现在运行以下查询,以用户 “lycheeuser@localhost ”和密码 “LycheePassword ”创建新数据库 “lychee”。您可以根据需要更改数据库的详细信息。

CREATE DATABASE lychee;
GRANT ALL PRIVILEGES ON lychee. * TO lycheeuser@'localhost' IDENTIFIED BY 'LycheePassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;


接下来,运行下面的查询,确保用户 “lycheeuser@'localhost ”可以访问数据库 “lychee”。

SHOW GRANTS FOR lycheeuser@localhost;

如果一切顺利,您将看到以下输出:



最后,输入 “quit ”退出 MariaDB 服务器。


下载荔枝图片管理


配置好 PHP 和 MariaDB 后,就可以下载荔枝源代码并设置安装目录和“.env ”文件了。


但首先,请使用以下命令在 Debian 系统中安装 “unzip ”软件包。

sudo apt install unzip -y

进入“/var/www ”目录,使用下面的 “wget ”命令下载荔枝源代码。确保从荔枝发布页面获取最新版本的链接。

cd /var/www/
wget https://github.com/LycheeOrg/Lychee/releases/download/v5.5.1/Lychee.zip

下载完成后,使用下面的 “unzip ”命令解压缩荔枝源代码。源代码将解压到“/var/www/Lychee ”目录。

unzip Lychee.zip

接下来,执行以下命令将“/var/www/Lychee ”目录的所有权更改为用户 “www-data”,并使某些目录可由用户 “www-data ”写入。

sudo chown -R www-data:www-data /var/www/Lychee
sudo chmod u+rw /var/www/Lychee/{storage,bootstrap/cache/,public/dist,public/uploads,public/sym}

现在运行以下命令复制荔枝的“.env ”文件,并使用 “nano ”编辑器进行修改。

sudo -u www-data cp /var/www/Lychee/.env-example /var/www/Lychee/.env
sudo -u www-data nano /var/www/Lychee/.env

用域名更改默认的 APP_URL,用 “mysql ”和数据库详细信息更改数据库配置,如下所示:

# domain name
APP_URL=https://photo.howtoforge.local

# database to MariaDB/MySQL
DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=lychee
DB_USERNAME=lycheeuser
DB_PASSWORD=LycheePassword

保存文件并退出编辑器。


创建 Apache 虚拟主机


在本节中,你将为运行荔枝图片管理创建一个新的 Apache 虚拟主机文件。


首先,运行下面的命令激活 “rewrite ”模块。

sudo a2enmod rewrite

现在使用 “nano ”编辑 Apache 配置文件“/etc/apache2/apache.conf”。

sudo nano /etc/apache2/apache.conf

在文件中添加以下配置。这样就可以为重写规则设置“.htaccess”。

<Directory /var/www/Lychee>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>

保存文件并退出编辑器。


现在使用下面的 “nano ”编辑器命令创建一个新的 Apache 虚拟主机配置文件“/etc/apache2/sites-available/lychee.conf”。

sudo nano /etc/apache2/sites-available/lychee.conf

粘贴以下配置,并确保用目标域名更改 “ServerName ”选项。确保与“.env ”文件中的 APP_URL 相同。

<VirtualHost *:80>

ServerAdmin admin@howtoforge.local
ServerName photo.howtoforge.local

DocumentRoot /var/www/Lychee/

ErrorLog /var/log/apache2/photo-howtoforge-local-error_log
CustomLog /var/log/apache2/photo-howtoforge-local-access_log common

</VirtualHost>

完成后,保存并退出文件。


现在运行下面的命令激活虚拟主机文件 “lychee.conf ”并验证 Apache 语法。如果 Apache 语法正确,将显示 “语法OK”。

sudo a2ensite lychee.conf
sudo apachectl configtest

最后,运行以下命令重启 Apache 并应用更改。

sudo systemctl restart apache2



使用 HTTPS 确保 Lychee 安全


如果在公共域名上运行 Lychee,请确保使用 HTTPS 确保其安全。本节将安装 Certbot,并使用 Letsencrypt 提供的 SSL/TLS 证书保护 Lychee。


运行下面的命令安装 Certbot 和 Apache 插件。

sudo apt install certbot python3-certbot-apache -y

安装完成后,运行以下 “certbot ”命令为荔枝安装生成新的 SSL/TLS 证书。确保在此命令中更改域名和电子邮件地址。

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email admin@howtoforge.local -d photo.howtoforge.local

整个过程完成后,你的荔枝安装应该已经通过 HTTPS 加密,你的 SSL/TLS 证书将出现在“/etc/letsencrypt/live/domain.com ”目录下。


安装荔枝图片管理


使用首选浏览器访问荔枝安装域名(如 https://photo.howtoforge.local/),即可看到荔枝安装向导。


单击 “下一步 ”继续安装。



确保安装了所有 PHP 扩展,并启用了 Apache 的 “重写 ”模块。



确保 PHP 可以在其中一些目录中读取、写入和执行。



检查屏幕中的“.env ”文件,确保域名和 MariaDB 的详细信息正确无误。



现在,安装程序将为荔枝生成应用密钥。



输入你的管理员用户、电子邮件地址和密码。荔枝安装应该就完成了。



在荔枝首页,点击登录提示,然后输入管理用户和密码。



上传一些图片到荔枝服务器后,你可以看到下面的荔枝用户仪表板。



结论


恭喜你 您已经在使用 LAMP Stack(Linux、Apache、MariaDB 和 PHP)的 Debian 12 服务器上完成了荔枝图片管理的安装。您还通过 Certbot 和 Letsnencyrpt 确保了荔枝的 HTTPS 安全。



文章相关标签: Debian 12 荔枝照片管理系统 Lychee
购物车