对 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
效果