链接–how to instal selfoss rss reader
我们将从添加新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
在CentOS服务器实例上安装任何软件包之前,我们将首先更新系统。
确保使用非root sudo用户登录到服务器并运行以下命令:
sudo yum -y update
安装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
然后找到以…开头
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
现在保存并关闭Apache配置文件。
我们将在本教程结束时重新启动Apache,但在安装和配置期间定期重启Apache肯定是一个好习惯,所以我们现在就做吧:
sudo systemctl restart httpd
我们现在需要打开默认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网页。
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(或类似内容),则需要重复上述步骤并确保正确重新启动服务器。
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
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”,因为默认建议是最安全的选项。
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”替换为实际安全的密码。
将当前工作目录更改为默认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
Selfoss RSS阅读器要求我们使用composer下载一些插件,所以让我们安装composer:
sudo yum -y install composer
现在确保您位于webroot目录中:
cd /var/www/html
使用apache用户运行composer :
sudo -u apache composer install
您将看到一些composer关于无法写入缓存的警告消息,但不要过于担心,因为所有内容仍然可以正常安装。
我们现在准备进入最后一步。
我们首先需要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并进一步自定义您的阅读器
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 包。
sudo yum-config-manager --enable remi-php73
sudo yum install php php-common php-opcache php-mcrypt php-cli php-gd php-curl php-mysqlnd
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
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.
解决
-sudo wget --content-disposition https://github.com/SSilence/selfoss/releases/download/2.18/selfoss-2.18.zip