自托管 Piwigo

对 Piwigo 不多介绍,老牌开源 Web 相册服务,也有移动端 App

下文将展示如何在 Debian 11 下自建 Piwigo

环境

  • Debian 11
    • php 7.4
    • Nginx 1.18.0
    • MySQL 8.0

步骤

以下指令在 root 用户下执行,其他用户酌情添加 sudo

LNMP 环境安装

Nginx、PHP 及其组件

直接使用包管理安装

apt install nginx php7.4-fpm php7.4 php7.4-common php7.4-mbstring php7.4-xmlrpc php7.4-gd php7.4-xml php7.4-intl php7.4-mysql php7.4-cli php7.4-ldap php7.4-zip php7.4-curl

删除默认的 nginx 页面

rm /etc/nginx/sites-enabled/default
nginx -t
nginx -s reload

编辑 /etc/php/7.4/fpm 目录下的 php.ini 配置文件,更改 PHP 的上传大小限制

MySQL

wget https://dev.mysql.com/get/mysql-apt-config_0.8.19-1_all.deb
dpkg -i mysql-apt-config_0.8.19-1_all.deb
apt install mysql-community-server

然后按照提示设定 root 密码,之后执行

mysql_secure_installation

删除匿名用户和测试数据库

配置数据库

登录 MySQL

mysql -u root -p

执行以下 SQL 语句

CREATE DATABASE piwigo;
CREATE USER 'piwigo'@'localhost' IDENTIFIED BY '[your password here]';
GRANT ALL PRIVILEGS ON piwigo.* TO 'piwigo'@'localhost';
exit;

获取并安装 Piwigo

wget -O piwigo.zip https://cn.piwigo.org/download/dlcounter.php?code=latest

解压

apt install unzip
unzip piwigo.zip

移动 piwigo 到 web 目录

mv ./piwigo /var/www/html/

更改所属用户,apt 安装的 nginx 默认用户为 www-data,lnmp 脚本安装的 nginx 默认用户为 www

chown -R www-data:www-data /var/www/html/piwigo/

Nginx 配置文件

/etc/nginx/sites-available 下新建 piwigo 配置文件,写入以下内容

server {
        listen 80;
        server_name _; # 或者域名
        root /var/www/html/piwigo;
        index index.php index.html;

        client_max_body_size 100M;

        location / {
                try_files $uri $uri/ =404;
        }

        location ~ \.php$ {
                include snippets/fastcgi-php.conf;
                fastcgi_pass unix:/run/php/php7.4-fpm.sock;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        }
}

新建软连接使生效

ln -s /etc/nginx/sites-available/piwigo /etc/nginx/sites-enabled

重载 nginx

nginx -t
nginx -s reload

效果

 

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据