搭建自己的rss阅读器--selfoss

链接–how to instal selfoss rss reader

如何在CentOS 7 LAMP VPS上安装Selfoss RSS阅读器

首先你得有一个具有ssh访问权限的干净的vultr centos服务器实例

第1步:添加Sudo用户

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

首先,登录您的服务器root:

ssh root@YOUR_VULTR_IP_ADDRESS

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

useradd user1

接下来,为user1用户设置密码:

passwd user1

出现提示时,输入安全且难忘的密码。

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

visudo
寻找这样的部分:

%wheel ALL=(ALL) ALL
此行告诉我们,作为该wheel组成员的用户可以使用该sudo命令获取root权限。默认情况下它将被取消注释,因此您只需退出该文件即可。

接下来我们需要添加user1到wheel组:

usermod -aG wheel user1

我们可以验证user1组成员身份并检查usermod命令是否与命令一起使用groups:

groups user1

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

su - user1

命令提示符将更新以指示您现在已登录该user1帐户。您可以使用以下whoami命令验证:

whoami

现在重新启动sshd服务,以便您可以ssh使用刚刚创建的新的非root sudo用户帐户登录:

sudo systemctl restart sshd

退出user1帐户:

exit

退出root帐户(这将断开您的ssh会话):

exit

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

ssh user1@YOUR_VULTR_IP_ADDRESS

如果你想在不必每次都输入密码的情况下执行sudo,那么/etc/sudoers再次打开文件,使用visudo:

sudo visudo
编辑wheel组的部分,使其如下所示:

%wheel ALL=(ALL) NOPASSWD: ALL
请注意: 不建议禁用sudo用户的密码要求,但它包含在此处,因为它可以使服务器配置更方便,更不令人沮丧,尤其是在较长的系统管理会话期间。如果您担心安全隐患,则可以在完成管理任务后始终将配置更改还原为原始配置。

只要您想root从用户帐户登录sudo用户帐户,就可以使用以下命令之一:

sudo -i
sudo su -

您可以随时退出root帐户并返回到您的sudo用户帐户:

exit


第2步:更新CentOS 7系统

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

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

sudo yum -y update

第3步:安装Apache Web Server

安装Apache Web服务器:

sudo yum -y install httpd

然后使用该systemctl命令启动并启用Apache以在引导时自动执行:

sudo systemctl enable httpd
sudo systemctl start httpd

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

sudo vi /etc/httpd/conf/httpd.conf 

该DocumentRoot配置选项会是这样的:

DocumentRoot "/var/www/html"

现在,让我们确保mod_rewrite加载了Apache模块。我们可以通过在Apache基本模块配置文件中搜索术语“ mod_rewrite”来完成此操作。

打开文件:

sudo vi /etc/httpd/conf.modules.d/00-base.conf

搜索术语mod_rewrite。

如果mod_rewrite加载了Apache模块,您将找到如下所示的配置行:

LoadModule rewrite_module modules/mod_rewrite.so

如果上面的行以分号开头,则需要删除分号以取消注释该行并加载该模块。当然,这也适用于任何其他所需的Apache模块。

我们现在需要编辑Apache的默认配置文件,以便mod_rewrite与Selfoss RSS Reader一起正常工作。

打开文件:

sudo vi /etc/httpd/conf/httpd.conf

然后找到以…开头并更改AllowOverride none为的部分AllowOverride All。最终结果(删除所有注释)将如下所示:


    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted

现在保存并关闭Apache配置文件。

我们将在本教程结束时重新启动Apache,但在安装和配置期间定期重启Apache肯定是一个好习惯,所以我们现在就做吧:

sudo systemctl restart httpd

第4步:打开Web防火墙端口

我们现在需要打开默认HTTP和HTTPS端口,因为默认情况下它们将被阻止firewalld。

打开防火墙端口:

sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp

重新加载防火墙以应用更改:

sudo firewall-cmd --reload

success每次成功完成防火墙配置命令后,您将看到终端中显示的单词。

我们可以HTTP通过在浏览器中访问服务器实例的IP地址或域来快速验证Apache 端口是否已打开:

http://YOUR_VULTR_IP_ADDRESS/
您将在浏览器中看到默认的Apache网页。


第5步:禁用SELinux(如果启用)

SELinux代表“安全增强型Linux”。它是Linux的安全增强功能,允许用户和管理员更好地控制访问控制。默认情况下,它在Vultr CentOS 7实例上被禁用,但我们将介绍禁用它的步骤,以防万一您没有从干净安装开始并且之前已启用它。

为了避免Selfoss RSS Reader的文件权限问题,我们需要确保禁用SELinux。

首先,让我们使用以下sestatus命令检查SELinux是启用还是禁用:

sudo sestatus

如果您看到类似的内容:SELinux status: disabled那么它肯定会被禁用,您可以直接跳到第6步。如果您看到任何其他消息,则需要完成此部分。

使用您喜欢的终端编辑器打开SELinux配置文件:

sudo vi /etc/selinux/config
更改SELINUX=enforcing为SELINUX=disabled然后保存文件。

要应用配置更改,SELinux需要重新启动服务器,因此您可以使用Vultr控制面板重新启动服务器,也可以只使用以下shutdown命令:

sudo shutdown -r now
当服务器重新启动时,您的SSH会话将断开连接,您可能会看到一条消息,通知您有关’broken pipe’或’Connection closed by remote host’。这没什么可担心的,只需等待20秒左右然后再次使用SSH(使用您自己的用户名和域名):

ssh user1@YOUR_DOMAIN
或者(使用您自己的用户名和IP地址):

ssh user1@YOUR_VULTR_IP_ADDRESS
重新登录后,您应该再次使用该sestatus命令检查SELinux的状态,以确保它已被正确禁用:

sudo sestatus
你应该看到一条消息说SELinux status: disabled。如果您看到一条消息SELinux status: enabled(或类似内容),则需要重复上述步骤并确保正确重新启动服务器。


第6步:安装PHP 7.1

CentOS 7要求我们添加外部存储库以安装PHP 7.1,因此请运行以下命令:

sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
我们现在可以安装PHP 7.1以及Selfoss RSS Reader所需的所有必需的PHP模块:

sudo yum -y install php71w php71w-gd php71w-mbstring php71w-mysql php71w-xml php71w-common php71w-pdo php71w-mysqlnd


第7步:安装MariaDB(MySQL)服务器

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

安装MariaDB数据库服务器:

sudo yum -y install mariadb-server
启动并启用MariaDB服务器以在引导时自动执行:

sudo systemctl enable mariadb
sudo systemctl start mariadb
保护您的MariaDB服务器安装:

sudo mysql_secure_installation
该root密码将会是空白,那么只需点击提示输入时输入root密码。

当提示创建MariaDB / MySQL root用户时,选择“Y”(表示是),然后输入安全root密码。只需对所有其他是/否问题回答“Y”,因为默认建议是最安全的选项。


第8步:为Selfoss RSS阅读器创建数据库

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

sudo mysql -u root -p
要访问MariaDB命令提示符,只需root在出现提示时输入MariaDB 密码。

运行以下查询以为Selfoss RSS Reader创建MariaDB数据库和数据库用户:

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

如果您愿意,可以根据自己的喜好更换数据库名称selfoss_db和用户名selfoss_user。(请注意,CentOS 7上MariaDB中用户名的默认最大长度为16个字符)。此外,请确保将“UltraSecurePassword”替换为实际安全的密码。


第9步:安装Selfoss RSS阅读器文件

将当前工作目录更改为默认Web目录:

cd /var/www/html/
如果您收到类似的错误消息,请’No such file or directory’尝试以下命令:

cd /var/www/ ; sudo mkdir html ; cd html
您当前的工作目录现在是: /var/www/html/。您可以使用pwd(打印工作目录)命令进行检查:

pwd
现在wget用来下载Selfoss RSS Reader安装包:

sudo wget --content-disposition https://github.com/SSilence/selfoss/archive/2.17.zip
请注意: 您一定要访问Selfoss RSS阅读器下载页面,查看最新版本。

列出当前目录以检查是否已成功下载文件:

ls -la
我们快速安装,unzip以便解压缩文件:

sudo yum -y install unzip
现在解压缩zip存档:

sudo unzip selfoss-2.17.zip
将所有安装文件移动到Web根目录:

sudo mv -v selfoss-2.17/* selfoss-2.17/.* /var/www/html 2>/dev/null
更改Web文件的所有权以避免任何权限问题:

sudo chown -R apache:apache * ./
再次重启Apache:

sudo systemctl restart httpd


第10步:安装并运行Composer

Selfoss RSS阅读器要求我们使用composer下载一些插件,所以让我们安装composer:

sudo yum -y install composer
现在确保您位于webroot目录中:

cd /var/www/html
使用apache用户运行composer :

sudo -u apache composer install
您将看到一些composer关于无法写入缓存的警告消息,但不要过于担心,因为所有内容仍然可以正常安装。

我们现在准备进入最后一步。


第11步:完成Selfoss RSS阅读器安装

我们首先需要config.ini使用正确的数据库设置更新Selfoss RSS Reader配置文件,因此请确保您仍在webroot目录中并复制defaults.ini到config.ini:

sudo cp -iv defaults.ini config.ini
接下来,打开config.ini配置文件并添加以下数据库值:

[globals]
db_type=mysql
db_host=localhost
db_database=selfoss_db
db_username=selfoss_user
db_password=UltraSecurePassword
db_port=3306
我们现在需要添加密码哈希config.ini,但首先我们需要生成它,因此请在浏览器中访问以下URL:

http://YOUR_VULTR_IP_ADDRESS/password
然后在Password字段中输入所需的密码,然后单击Generate。

只需将生成的哈希值复制到config.ini文件中的密码选项,这样密码部分现在看起来像这样:

username=admin
password=b729a37c34ff9648c33d67de3b289b58b7486dd71236343a6c2c275c2cc0477bd1d254eb92248bfa753169547d4bd2e81c2c9e460ba5bba822af1e87722dd12a
salt=
注意: 您的密码哈希显然与上面显示的哈希不同,您可以自由选择其他用户名。

从config.ini文件中删除所有其他未经编辑的选项,以便您的完整配置文件看起来类似于:

[globals]
db_type=mysql
db_host=localhost
db_database=db1
db_username=u1
db_password=usecpass1
db_port=3306
username=admin
password=b729a37c34ff9648c33d67de3b289b58b7486dd71236343a6c2c275c2cc0477bd1d254eb92248bfa753169547d4bd2e81c2c9e460ba5bba822af1e87722dd12a
salt=
注意: 如果要更改任何defaults.ini选项,只需将它们添加到上面的选项列表中即可。

编辑完配置文件后,可以保存并退出该文件。


您现在可以通过访问主页并输入您的用户名和密码登录Selfoss RSS Reader:

http://YOUR_VULTR_IP_ADDRESS/
如果您希望阅读器自动更新您的提要(您几乎肯定会这样做),则需要编辑您的crontab:

sudo crontab -e
添加以下行以每小时刷新一次Feed:

0 * * * * apache cd /var/www/html && php cliupdate.php
如果尚未配置Vultr DNS设置,则可以使用Vultr DNS控制面板执行此操作。

建议您将站点配置为使用SSL,因为大多数现代浏览器会在站点未启用SSL并且SSL证书现在免费提供时发出警告。

在任何情况下,如果您愿意,您现在可以自由地开始添加您的Feed并进一步自定义您的阅读器


一些error

1.在 CentOS 7 上安装 PHP 7.3–链接

CentOS 7 默认附带的 PHP 版本是 5.4 ,该版本已经正式结束生命很长一段时间,官方已经不再支持此版本。
1. 先决条件
在开始本教程之前,请确保使用具有 sudo 权限的用户帐户或 root 用户登录服务器。最好使 sudo 用户来运行管理命令而不是 root 用户。如果您的系统上没有 sudo 用户,可以先创建一个用户。

2. 启用 Remi 存储库
PHP 7.x 包可以在几个不同的存储库中使用。我们将使用 Remi 存储库,它提供各种软件包的更新版本,包括 PHP 。

Remi 存储库依赖于 EPEL 存储库,因为我们需要首先安装 EPEL 存储库。

运行以下命令来启用 EPEL 和 Remi 存储库:

sudo yum install epel-release yum-utils
sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm

Yum 可能会提示您是否导入存储库 GPG 密钥,输入 y 并点击 Enter 。

3. 在以下部分中,我们将介绍如何通过启用相应的 Remi 存储库来安装 PHP 7.x. 如果您已经在系统上安装了 PHP 5.4 , yum 则会更新 PHP 包。

  • 首先启用 PHP 7.3 Remi 存储库:
sudo yum-config-manager --enable remi-php73
  • 安装 PHP 7.3 和一些最常见的 PHP 模块:
sudo yum install php php-common php-opcache php-mcrypt php-cli php-gd php-curl php-mysqlnd
  • 通过键入以下将打印 PHP 版本的命令来验证 PHP 安装:
php -v

PHP 7.3.1 (cli) (built: Jan 8 2019 13:55:51) ( NTS )
Copyright © 1997-2018 The PHP Group
Zend Engine v3.3.1, Copyright © 1998-2018 Zend Technologies
with Zend OPcache v7.3.1, Copyright © 1999-2018, by Zend Technologies


2.创建selfoss数据库–链接

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

执行

CREATE USER 'selfoss_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';

出错,在网上查找
Assume the user is there, so drop the user
After deleting the user, there is need to flush the mysql privileges
Now create the user.

解决


3.安装selfoss rss阅读器文件

  • selfoss rss reader 安装包已经更新至新地址:
-sudo wget --content-disposition https://github.com/SSilence/selfoss/releases/download/2.18/selfoss-2.18.zip
  • 直接解压至所在目录并删除selfoss-2.18.zip

end

你可能感兴趣的:(服务器搭建)