{"id":16707,"date":"2015-01-12T15:01:54","date_gmt":"2015-01-12T21:01:54","guid":{"rendered":"https:\/\/secure.rosehosting.com\/blog\/?p=16707"},"modified":"2022-12-30T03:20:43","modified_gmt":"2022-12-30T09:20:43","slug":"how-to-install-selfoss-on-a-centos-7-linux-vps","status":"publish","type":"post","link":"https:\/\/www.rosehosting.com\/blog\/how-to-install-selfoss-on-a-centos-7-linux-vps\/","title":{"rendered":"How to install Selfoss on a CentOS 7 Linux VPS"},"content":{"rendered":"
In the following article we are going to guide you through the steps of installing Selfoss on a CentOS 7 Linux VPS<\/a><\/strong>.<\/p>\n What is Selfoss?<\/strong><\/p>\n It is a new multipurpose RSS reader, live stream, mashup and aggregation web application with the following features:<\/p>\n <\/p>\n System Requirements?<\/strong><\/p>\n <\/p>\n Before proceeding any further, <\/p>\n Selfoss requires a webserver, a database server and a PHP server so go ahead and install LEMP on the CentOS 7 VPS<\/a>. Once you complete the LEMP installation<\/strong> proceed with creating a database for Selfoss.<\/p>\n <\/p>\n Selfoss requires a database to store its data, so use your favorite MySQL tools to create a new database or use command line as in:<\/p>\n <\/p>\n <\/p>\n We’ll be using now you should have selfoss extracted in <\/p>\n Any settings in A sample <\/p>\n Next, we have to setup a virtual server block so we can serve the Selfoss RSS app using http:\/\/rss.mydomain.com. To achieve this, create the following file in With the Nginx configuration file in place, proceed with reloading the webserver for the change to take effect using:<\/p>\n Set-up proper ownership:<\/p>\n <\/p>\n Finally, access your Selfoss RSS reader at http:\/\/rss.mydomain.com using your favorite web browser.<\/p>\n You may also want to setup a cron job which will update your feeds using:<\/p>\n Of course you don\u2019t have to do any of this if you use one of our Linux VPS Hosting<\/a> services, in which case you can simply ask our expert Linux admins to install Selfoss<\/strong> for you. They are available 24×7 and will take care of your request immediately.<\/p>\n PS<\/span>.<\/strong> If you liked this post please share it with your friends on the social networks using the buttons on the left or simply leave a reply below. Thanks.<\/p>\n <\/p>\n","protected":false},"excerpt":{"rendered":" In the following article we are going to guide you through the steps of installing Selfoss on a CentOS 7 … <\/p>\n\n
\n
UPDATE SYSTEM<\/b><\/h3>\n
ssh<\/code> to your CentOS VPS<\/a>, initiate a
screen<\/code> session and upgrade your system using
yum<\/code>:<\/p>\n
## screen -U -S selfoss-centos\r\n## yum update\r\n## yum install unzip vim<\/pre>\n
INSTALL LEMP (Linux Nginx MariaDB and PHP)<\/b><\/h3>\n
CREATE A NEW DATABASE<\/b><\/h3>\n
# mysql -u root -p\r\n\r\nMariaDB [(none)]> create database selfoss;\r\nMariaDB [(none)]> grant all on selfoss.* to selfoss@localhost identified by 'SECURE_PASSWORD';\r\nMariaDB [(none)]> \\q<\/pre>\n
SELFOSS INSTALLATION AND CONFIGURATION<\/b><\/h3>\n
DOWNLOAD AND EXTRACT SELFOSS<\/b><\/h4>\n
\/srv\/www<\/code> as webserver document root, so let’s create this directory and download Selfoss using:<\/p>\n
## mkdir -p \/srv\/www\r\n## wget https:\/\/github.com\/SSilence\/selfoss\/archive\/master.zip -O \/tmp\/selfoss.zip\r\n## unzip \/tmp\/selfoss.zip -d \/srv\/www\/<\/pre>\n
\/srv\/www\/selfoss-master<\/code>. proceed with selfoss configuration<\/p>\n
SELFOSS CONFIGURATION<\/b><\/h4>\n
config.ini<\/code> will override the settings in
defaults.ini<\/code>. To customize settings follow these instructions:<\/p>\n
\n
[globals]<\/code> line.<\/li>\n<\/ol>\n
## cd \/srv\/www\/selfoss-master\r\n## cp defaults.ini config.ini\r\n## vim config.ini<\/pre>\n
config.ini<\/code> may look like the following:<\/p>\n
[globals]\r\ndb_type=mysql\r\ndb_host=localhost\r\ndb_database=selfoss\r\ndb_username=selfoss\r\ndb_password=SECURE_PASSWORD\r\ndb_port=3306<\/pre>\n
WEBSERVER CONFIGURATION<\/b><\/h3>\n
\/etc\/nginx\/conf.d\/selfoss.conf<\/code>. Of course, make sure you change the relevant information to match yours.<\/p>\n
server {\r\n listen 80;\r\n server_name rss.mydomain.com;\r\n root \/srv\/www\/selfoss-master\/;\r\n access_log \/var\/log\/nginx\/rss.access.log;\r\n error_log \/var\/log\/nginx\/rss.error.log;\r\n\r\n location ~* \\ (gif|jpg|png) {\r\n expires 30d;\r\n }\r\n location ~ ^\/favicons\/.*$ {\r\n try_files $uri \/data\/$uri;\r\n }\r\n location ~ ^\/thumbnails\/.*$ {\r\n try_files $uri \/data\/$uri;\r\n }\r\n location ~* ^\/(data\\\/logs|data\\\/sqlite|config\\.ini|\\.ht) {\r\n deny all;\r\n }\r\n location \/ {\r\n index index.php index.html index.htm;\r\n try_files $uri \/public\/$uri \/index.php$is_args$args;\r\n }\r\n location ~ \\.php$ {\r\n \ttry_files $uri = 404;\r\n fastcgi_pass 127.0.0.1:9000;\r\n fastcgi_index index.php;\r\n include \/etc\/nginx\/fastcgi_params;\r\n fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;\r\n }\r\n}<\/pre>\n
## nginx -t\r\n## systemctl restart nginx<\/pre>\n
## chown nginx: -R \/srv\/www\/selfoss-master\/<\/pre>\n
ACCESS SELFOSS<\/b><\/h3>\n
## echo \"*\/10 * * * * root wget -o \/dev\/null http:\/\/yourwebsite.com\/update\" >> \/etc\/cron.d\/selfoss<\/pre>\n
\n