秘站小记

记录,思考

在共享主机上搭建friendica

默认分类 0 评
在共享主机上搭建friendica入住联邦宇宙是最方便和省钱的办法。

前提

根据我的经验,在共享主机上部署friendica需要一些条件。

  1. 需要支持Mariadb数据库。mysql虽然能成功运行,后续升级会出错。
  2. 共享主机需要支持网页Terminal或者允许ssh连接操作。如果没有将无法成功安装
  3. 共享主机支持添加Cron后台计划任务。friendica的发帖更新,好友状态同步等都需要后台任务定时运行。

如果是基于cpanel的共享主机应该都能满足以上条件,购买前需要跟供应商客服联系确认。
本人使用RackNred的一年/15美元的共享主机运行良好,推荐单人或者几个人使用没有太大问题。

购买

选择一个合适的套餐,推荐硬盘大一点的。然后填写您的域名 点USE。进行下单付款。
1
成功购买后系统会给你邮箱发送共享IP,登录等信息。你需要把自己的域名指向这个共享IP地址或者直接把NS记录改成邮件里的地址。

开始部署:

1.创建用于friendica的数据库:
打开控制面板 选择mysql数据库。屏幕截图 2022-12-05 191104.png

创建数据库用户名 请记住密码。然后创建数据库。
11
向数据库添加用户并给对数据库操作权限。
12

2.下载friendica的最新版到网站根目录。
可以点这里下载到电脑然后通过文件管理器上传,然后解压。
屏幕截图_20230222_195948.png
也可以通过ssh连接通过命令下载。

cd /home/xxx/html_public/
git clone https://github.com/friendica/friendica.git -b stable

此时如果打开域名会提示 运行bin/composer.phar install --no-dev命令。
3.安装
首先确保网站根目录可写入。
连接ssh

cd /home/xxx/html_public/
bin/composer.phar install --no-dev

这样就开始安装完成。不过此时打开网页应该是500错误或者404.
4.配置
1.在config文件夹的local-sample.config.php文件改名为local.config.php
并配置您的数据库信息,网站基本信息。管理员邮箱等信息。请注意,邮箱必须可以收到邮件。您的登录信息系统通过邮件发送给您。
以下根据您的需要替换内容:

<?php

return [
    'database' => [
        'hostname' => 'localhost',
        'username' => '数据库用户名',
        'password' => '数据库密码',
        'database' => '数据库名',
        'charset' => 'utf8mb4',
    ],

    'config' => [
        'php_path' => '/usr/local/bin/php', //php目录
        'admin_email' => '邮箱',
        'sitename' => 'Friendica Social Network',
        'hostname' => '域名',
        'register_policy' => \Friendica\Module\Register::OPEN,
        'max_import_size' => 200000,
    ],
    'system' => [
        'urlpath' => '',
        'pidfile' => '',
        'url' => '域名',
        'ssl_policy' => 1,
        'basepath' => '网站根目录',
        'default_timezone' => 'Asia/Shanghai',
        'language' => 'zh-cn',
    ],
];

保存后退出。
此时如果顺利应该可以访问安装页面了。如果提示404,在网站根目录的.htaccess-dist文件改名为.htaccess就可以了。
会检测php扩展安装情况,如果没有安装在控制面板里安装相应的扩展。
注册时候一定要填写在config里的邮箱。不然管理面板进不去。

5.设置后台任务
在控制面板 Cron 里添加一个定时后台任务。它会定时执行帖子同步,联系人更新等任务。

/usr/local/bin/php /home/fedibar/public_html/bin/worker.php

2
到此安装过程基本完成了。

故障排查:

未写完

通过iptables防火墙保护自己的小服务器