在过去几年中,社交网络彻底改变了人们的生活。人们每天都使用社交渠道与朋友和家人保持联系。但是,关于隐私和数据安全的一个常见问题仍然存在。即使社交网络已经制定了复杂的隐私政策来保护用户,如果您不想让您的数据公开,那么将您的数据维护在您自己的服务器中始终是最佳选择。
同样,Raspberry Pi—Raspbian Lite 版本非常通用,可以帮助您设置许多有用的家庭服务(另请参阅我的Raspberry Pi 项目文章)。通过搜索开源软件并使用这款神奇的设备进行测试,可以实现一些令人着迷的功能。一个值得尝试的有趣例子是在您的 Raspberry Pi 中安装 OpenSource Social Network。
什么是 OpenSource Social Network?
OpenSource Social Network (OSSN) 是一款用 PHP 编写的快速开发社交网络软件,它本质上允许您制作一个社交网络网站。OSSN 可用于构建不同类型的社交应用程序,例如
- 私有内联网
- 公共/开放网络
- 社区
OSSN 支持的功能包括
- 照片
- 个人资料
- 好友
- 表情符号
- 搜索
- 聊天
OSSN 在 LAMP 服务器上运行。它对硬件的要求非常低,但用户界面非常出色,而且还对移动设备友好。
我们需要什么
这个项目非常简单,而且因为我们只安装远程 Web 服务,所以我们只需要一些廉价的部件。我将使用 Raspberry Pi 3 model B+,但它也应该适用于 Raspberry Pi 3 model A+ 或更新的板子。
硬件
- Raspberry Pi 3 model B+ 及其电源
- 一张 micro SD 卡(最好是高性能卡,至少 16GB)
- 一台装有 SFTP 软件的台式电脑(例如,免费的 Filezilla),用于将安装包传输到您的 RPI 中。
逐步操作步骤
我们将从设置经典的 LAMP 服务器开始。然后我们将设置数据库用户并安装 OpenSource Social Network。
1. 安装 Raspbian Buster Lite OS
对于此步骤,您可以简单地按照我的 在您的 Raspberry Pi 中安装 Raspbian Buster Lite 文章进行操作。
确保您的系统是最新的。通过 ssh 终端连接并键入以下命令
sudo apt-get update
sudo apt-get upgrade
LAMP (Linux–Apache–Mysql–Php) 服务器通常附带 MySQL 数据库。在我们的项目中,我们将使用 MariaDB 代替,因为它更轻量级,并且适用于 Raspberry Pi。
3. 安装 Apache 服务器
sudo apt-get install apache2 -y

4. 安装 PHP
sudo apt-get install php -y
sudo apt-get install mariadb-server php-mysql -y
PhpMyAdmin 在 OpenSource Social Network 中不是强制性的,但我建议您安装它,因为它简化了数据库管理。
sudo apt-get install phpmyadmin
- 使用空格选择 apache(强制性),然后按 OK。
- 选择 Yes 以使用 dbconfig-common 为 phpMyAdmin 配置数据库。
- 输入您喜欢的 phpMyAdmin 密码,然后按 OK。
- 再次输入您的 phpMyAdmin 密码以确认,然后按 OK
7. 授予 phpMyAdmin 用户 DB 权限以管理数据库
我们将使用 root 用户(默认密码为空)连接到 MariaDB 以授予权限。请记住在每个命令行的末尾使用分号,如下所示
sudo mysql -uroot -p
grant all privileges on *.* to 'phpmyadmin'@'localhost';
flush privileges;
quit
sudo systemctl restart apache2.service

默认 phpMyAdmin 登录凭据是
- 用户:phpmyadmin
- 密码:您在 phpMyAdmin 安装步骤中设置的密码
安装其他开源社交网络所需的软件包并设置 PHP
我们需要为 OpenSource Social Network 的首次设置向导准备我们的系统。所需的软件包包括
- PHP 版本可以是 5.6、7.0、7.1 中的任何一个
- MYSQL 5 或更高版本
- APACHE
- MOD_REWRITE
- 应启用 PHP 扩展 cURL 和 Mcrypt
- PHP GD 扩展
- PHP ZIP 扩展
- PHP 设置 allow_url_fopen 启用
- PHP JSON 支持
- PHP XML 支持
- PHP OpenSSL
因此,我们将使用以下终端命令安装它们
sudo apt-get install php7.3-curl php7.3-gd php7.3-zip php7.3-json php7.3-xml
1. 启用 MOD_REWRITE
sudo a2enmod rewrite
sudo nano /etc/apache2/sites-available/000-default.conf
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
# SECTION TO ADD --------------------------------
<Directory /var/www/html>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require all granted
</Directory>
# END SECTION TO ADD --------------------------------
</VirtualHost>
sudo apt install php-dev libmcrypt-dev php-pear
sudo pecl channel-update pecl.php.net
sudo pecl install mcrypt-1.0.2
sudo nano /etc/php/7.3/apache2/php.ini
6. 我建议的另一个设置是将 PHP 最大上传文件大小提高到 16 MB
sudo nano /etc/php/7.3/apache2/php.ini
upload_max_filesize = 16M
sudo systemctl restart apache2.service
安装 OSSN
1. 创建数据库并设置用户
返回 phpmyadmin 网页(浏览“http://<<YourRpiIPAddress>>/phpmyadmin/”)并登录
用户:phpmyadmin
密码:在 phpmyadmin 安装步骤中设置的密码
单击数据库选项卡

创建一个数据库,并记下数据库名称,因为稍后在安装过程中您将被要求输入它。

现在是为 OSSN 创建数据库用户的时候了。在本例中,我将使用以下凭据
用户:ossn_db_user
密码:ossn_db_password
因此,终端命令将是(如果您之前没有更改过,root 密码仍然为空)
sudo mysql -uroot -p
CREATE USER 'ossn_db_user'@'localhost' IDENTIFIED BY 'ossn_db_password';
GRANT ALL PRIVILEGES ON ossn_db.* TO 'ossn_db_user'@'localhost';
flush privileges;
quit
从 OSSN 下载页面 在您的本地 PC 上下载 OSSN 安装 zip 文件。在撰写本文时,此文件名为“ossn-v5.2-1577836800.zip”。
使用您喜欢的 SFTP 软件,通过 SFTP 将整个 zip 文件传输到 Raspberry Pi 上“/home/pi/download”路径下的新文件夹中。常见的(默认)SFP 连接参数是
- 主机:您的 Raspberry Pi IP 地址
- 用户:pi
- 密码:raspberry(如果您没有更改 pi 默认密码)
- 端口:22
返回终端
cd /home/pi/download/ #Enter directory where OSSN installation files have been transferred
unzip ossn-v5.2-1577836800.zip #Extracts all files from zip
cd /var/www/html/ #Enter Apache web directory
sudo rm index.html #Removes Apache default page - we'll use OSSN one
sudo cp -R /home/pi/download/ossn-v5.2-1577836800/* ./ #Copy installation files to web directory
sudo chown -R www-data:www-data ./
sudo mkdir /opt/ossn_data
sudo chown -R www-data:www-data /opt/ossn_data/

所有检查都应该没问题。单击页面末尾的“下一步”按钮。

阅读许可验证,然后单击页面末尾的“下一步”按钮以接受。

输入您选择的数据库用户、密码和数据库名称。还记得输入 OSSN 数据文件夹。按“安装”。

输入您的管理员帐户信息,然后按“创建”按钮。

现在一切都应该没问题了。按“完成”访问管理仪表板。

因此,可以使用 URL “http://<<YourRpiIPAddress>>/administrator” 访问管理面板,而用户链接将是 “http://<<YourRpiIPAddress>>”。

本文最初发布于 peppe8o.com。经许可转载。
25 条评论