如何在FreeBSD 11 VPS上安装Lychee 3.1 Photo Album

・18 分钟阅读

使用不同的系统?

Lychee 3.1 Photo Album是一个简单而灵活的,免费的,开源的照片管理工具,它运行在VPS服务器上,它可以在几秒钟内完成安装,使你能够快速安全地上传,管理和共享照片。Lychee 3.1支持Dropbox导入,(使用有效的插件应用程序密钥),它可以通过Plug-Ins扩展,可以同步任何目录,通过SSH上传照片。

在本教程中,我们将使用ApacheWeb服务器,PHP7.1和Mariadb数据库在FreeBsd11 VPS上安装Lychie3.1 Photo Album。

前提条件

  • 一个干净的FreeBSD 11服务器实例,有SSH访问权限,

步骤1:添加sudo用户

我们将从添加一个新的sudo用户开始。

首先,作为root登录到服务器:


ssh root@YOUR_VULTR_IP_ADDRESS

默认情况下在FreeBSD 11服务器实例中未安装sudo命令,因此我们将首先安装sudo

 
pkg install sudo

 

现在添加一个名为user1 (或你的首选用户名)的新用户:

 
adduser user1

 

adduser命令将提示你为用户帐户提供许多详细信息,因此只需在这样做时选择默认值,当你被询问是否是 Invite user1 into any other groups? 你应该输入wheel,以便将user1添加到wheel组中。

现在检查/etc/sudoers文件以确保启用了sudoers组:

 
visudo

 

查找这样的部分:


# %wheel ALL=(ALL) ALL

这一行告诉我们是wheel组成员的用户可以使用sudo命令获得root权限,

我们可以通过groups命令验证user1组成员身份:

 
groups user1

 

如果user1不是wheel组的成员,则可以使用此命令来更新user1组成员身份:


pw group mod wheel -m user1 

现在使用su命令切换到新的sudo用户user1帐户:

 
su -user1

 

命令提示将更新以指示你现在已登录到user1帐户,你可以使用whoami命令来验证:

 
whoami

 

现在重启sshd服务,以便你可以通过你刚刚创建的新的非根sudo用户帐户登录到ssh


sudo /etc/rc.d/sshd restart

退出user1帐户:

 
exit

 

退出root帐户(它将中断你的ssh会话):

 
exit

 

你现在可以使用新的非root sudo用户user1帐户ssh从本地主机进入服务器实例:


ssh user1@YOUR_VULTR_IP_ADDRESS

如果你希望在每次不需要键入密码的情况下执行sudo,请使用visudo再次打开/etc/sudoers文件:

 
sudo visudo

 

编辑wheel组的节,使它看起来像这样:


%wheel ALL=(ALL) NOPASSWD: ALL

请注意:禁用sudo用户的密码需求是不推荐的,但是,它可以使服务器配置更加方便,

无论什么时候要从sudo用户帐户登录到root用户帐户,都可以使用以下命令之一:


sudo -i
sudo su -

你可以退出root帐户,并通过简单地键入以下内容返回到你的sudo用户帐户:

 
exit

 

步骤2更新FreeBSD 11系统

在FreeBSD服务器实例上安装任何软件包之前,我们先更新系统。

确保你使用非根sudo用户登录到服务器,并运行以下命令:


sudo freebsd-update fetch
sudo freebsd-update install
sudo pkg update
sudo pkg upgrade

步骤3安装Apache Web服务器

安装Apache网络服务器:


sudo pkg install apache24

提示时输入y

现在使用sysrc命令使Apache服务在引导时自动执行:


sudo sysrc apache24_enable=yes

sysrc命令更新/etc/rc.conf配置文件,因此如果你要手动验证配置更新,你可以使用你最喜欢的终端编辑器打开/etc/rc.conf文件:

 
vi/etc/rc.conf

 

现在启动Apache服务:


sudo service apache24 start

通过访问浏览器中服务器实例的IP地址或域,可以快速检查apache是否正在运行:


http://YOUR_VULTR_IP_ADDRESS/

你将看到默认的FreeBSD页面显示文本:

 
It works

 
!

检查Apache默认配置文件,以确保DocumentRoot指令指向正确的目录:


sudo vi /usr/local/etc/apache24/httpd.conf

DocumentRoot配置选项将如下所示:


DocumentRoot"/usr/local/www/apache24/data"

我们现在需要启用mod_rewrite Apache模块,我们可以通过搜索mod_rewrite的默认的Apache配置文件来实现这一点。

默认情况下,mod_rewrite Apache模块将被注释为(这意味着它被禁用了),干净的FreeBSD 11实例上的配置行如下所示:


#LoadModule rewrite_module libexec/apache24/mod_rewrite.so

只需删除哈希符号即可取消注释该行,并且加载该模块。当然,这也适用于其他需要的Apache模块:


LoadModule rewrite_module libexec/apache24/mod_rewrite.so

我们现在需要在同一配置文件中编辑Directory Apache指令,以便mod_rewrite能够正确地使用Lychee。

查找以以下方式开始的配置文件的节 <Directory"/usr/local/www/apache24/data">AllowOverride none更改为AllowOverride All ,最终结果(删除所有批注)的外观如下所示:


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

现在保存并退出Apache配置文件。

我们将在本教程结束时重新启动Apache,但是在安装和配置期间定期重新启动Apache是一个好习惯,


sudo service apache24 restart

步骤4安装和配置php 7.1

现在可以安装PHP 7.1以及Lychee所需的所有必需的PHP模块:


sudo pkg install php71 mod_php71 php71-gd php71-mbstring php71-mysqli php71-xml php71-curl php71-ctype php71-tokenizer php71-simplexml php71-dom php71-session php71-iconv php71-hash php71-json php71-fileinfo php71-pdo php71-pdo_mysql php71-zlib php71-openssl php71-zip php71-phar

FreeBSD 11为我们提供了使用开发php.ini或生产php.ini的选项,因为我们要在Web服务器上安装Lychee,所以,我们将使用生产版本。首先,备份php.ini-production


sudo cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini-production.backup

然后将软链接php.ini-production连接到php.ini


sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini

为了实际使用PHP,我们需要配置Apache,所以,让我们在Apache Includes目录中创建一个新的文件调用php.conf


sudo vi /usr/local/etc/apache24/Includes/php.conf

在新创建的文件中输入以下文本:


<IfModule dir_module>
 DirectoryIndex index.php index.html
 <FilesMatch".php$">
 SetHandler application/x-httpd-php
 </FilesMatch>
 <FilesMatch".phps$">
 SetHandler application/x-httpd-php-source
 </FilesMatch>
</IfModule>

保存并退出文件。

因为我们可能需要使用Lychee上传和处理大文件,我们将需要改变一些默认的PHP设置。

打开php.ini配置文件:


sudo vi /usr/local/etc/php.ini

将以下PHP选项更改为这些值:


max_execution_time = 300
post_max_size = 100M
upload_max_size = 100M
upload_max_filesize = 50M
memory_limit = 256M

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

如果你遇到无法使用Lychee上传或处理大型文件的问题,那么只需尝试进一步增加上述值,因为这可以解决你的问题。

现在让我们重新启动Apache,以便,它可以重新加载配置更改:


sudo service apache24 restart

第5步安装MariaDB MySQL服务器

FreeBSD 11默认使用MariaDB数据库服务器,这是一个增强的,完全开源的,社区开发的,直接替代MySQL服务器。

安装最新版本的MariaDB数据库服务器:


sudo pkg install mariadb102-server mariadb102-client

启动并启用MariaDB服务器在引导时自动执行:


sudo sysrc mysql_enable="yes"
sudo service mysql-server start

保护你的MariaDB服务器安装:


sudo mysql_secure_installation

当提示创建MariaDB/mysql root用户时,选择"y"(是),然后输入一个安全的root密码,简单回答"y"到其他所有是/无问题作为默认建议是最安全的选择。

步骤6为Lychee创建数据库

运行以下命令,以MariaDB root用户身份登录到MariaDB shell :


sudo mysql -u root -p

要访问MariaDB命令提示,只需在提示时输入MariaDB root密码。

运行以下查询以创建Lychee的MariaDB数据库和数据库用户:


CREATE DATABASE lychee_db CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'lychee_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
GRANT ALL PRIVILEGES ON lychee_db.* TO 'lychee_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

如果愿意,你可以将数据库名lychee_db和用户名lychee_user替换为更符合你喜好的,此外,请确保使用实际安全的密码替换"UltraSecurePassword "。

步骤7安装Lychee文件

将当前工作目录更改为默认的网络目录:


cd /usr/local/www/apache24/data

现在你的工作目录为: /usr/local/www/apache24/data ,你可以使用pwd (打印工作目录)命令检查此命令:

 
pwd

 

现在使用wget下载Lychee安装软件包:


sudo wget --content-disposition https://github.com/electerious/Lychee/archive/v3.1.6.zip

请注意:你应该通过访问Lychee下载页面 来检查最近的版本 。

 
ls -la

 

删除index.html

 
sudo rm index.html

 

现在解压压缩归档文件:


sudo unzip Lychee-3.1.6.zip

将所有安装文件移动到web root目录中:


sudo mv -v Lychee-3.1.6/* Lychee-3.1.6/.* /usr/local/www/apache24/data 2>/dev/null

更改网站文件的所有权以避免任何权限问题:


sudo chown -R www:www * ./

uploaddata目录中设置可读权限:


sudo chmod -R 777 data/ upload/

重新启动Apache :


sudo service apache24 restart

现在我们已经准备好进入最后一步了。

步骤8完成Lychee的安装

要访问Lychee安装页面,请在你的浏览器地址栏中输入你的实例IP地址:


http://YOUR_VULTR_IP_ADDRESS/

  1. Database Connection Details页上,输入以下数据库值:

    
    Database Host: localhost
    Database Username: lychee_user
    Password: UltraSecurePassword
    Database Name: lychee_db
    
    

    单击Connect继续。

  2. 为你的安装输入UsernamePassword

    
    Username: <your username>
    Password: <a secure password>
    
    

    单击Create Login继续。

你将被自动重定向到Photo Album上传页面,并登录到管理部分,如果要更改设置,可以单击页面左上角的齿轮图标。

要更改更高级的设置,你需要返回到终端,并且编辑Lychee配置文件:


sudo vi data/config.php

如果还没有配置DNS设置,则可以使用DNS控制面板进行配置。

当网站没有SSL启用,并且现在可以免费使用SSL证书时,建议将站点配置为使用SSL 。

无论怎样,你现在可以开始上传和分享你的照片了,确保你查看Lychee文档,以便获得有关如何配置和使用照片管理器的更多信息。

Chinaxiong profile image