RSS 피더 – TTRSS

RSS 라는 말을 한번쯤 들어 보셨을 겁니다. 여전히 인기 많은 구독 시스템이죠.

Tiny Tiny RSS 는 편리하고 성능이 뛰어나며 인기 좋은 RSS 피더 입니다. 거기다 완전히 셀프호스팅이 가능하죠. 설치도 쉽습니다. 설치해보도록 하겠습니다.

TTRSS 설치

iocage console FEP

감옥으로 로그인 해 주고

pkg install tt-rss php72-iconv php72-intl php72-openssl php72-gettext php72-gd php72-mbstring php72-curl php72-ctype php72-tokenizer php72-simplexml php72-dom php72-session php72-iconv php72-hash php72-json php72-fileinfo php72-zlib php72-openssl php72-zip php72-phar

ttrss 와 자주 쓰이는 패키지를 설치하였습니다.

chown -R www:www /usr/local/www/tt-rss/

권한 설정을 해 주었습니다.

mv /usr/local/www/tt-rss/config.php /usr/local/www/tt-rss/config.php-dist

초기 설정을 만들어주었습니다.

서버 블록 만들기

vi /usr/local/etc/nginx/conf.d/ttrss.conf

server {
    listen      81;

    root /usr/local/www/tt-rss/;
    index index.php;

    access_log /var/log/nginx/ttrss/access.log;

    location / {
        try_files $uri $uri/ =404;
    }

    include otherconf/php.conf;

    location /cache {
        deny all;
    }

    location = /config.php {
        deny all;
    }

}

81포트를 듣게 한 것은 리버스 프록시에 연결할 때 좀더 간단하게 연결하기 위한 것입니다.

mkdir /var/log/nginx/ttrss

로그가 저장될 디렉토리를 만든 후

nginx -t

구문을 테스트하고 문제가 없다면

service nginx restart && service php-fpm restart

재시작 해 줍니다.

데이터베이스 만들기

TTRSS 는 데이터베이스 내의 다른 응용 프로그램과 공존할 수 있습니다. 워드프레스나 미디어위키처럼 접두사만 넣어 주면 되지요. 그러니 앞서 미디어위키나 워드프레스를 위한 데이터베이스를 만들었다면 그것을 사용해도 됩니다.

본 포스팅에서는 새로운 데이터베이스를 만들도록 하겠습니다.

exit

감옥 안에 있다면 나와 준 다음

iocage exec MariaDB mysql -u root -p

MariaDB 콘솔에 로그인 한 다음

CREATE USER ttrssuser@'FEMP.Jail.IP' identified by 'superstrongpassword';
CREATE DATABASE ttrssdb DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
grant all privileges on ttrssdb.* TO ttrssuser@'FEMP.Jail.IP';
FLUSH PRIVILEGES;
exit;

데이터베이스를 만들어주었습니다.

리버스 프록시 연결

iocage exec Nginx_WAF vi /usr/local/etc/nginx/conf.d/ttrss.conf

server {
    listen      443 ssl http2;
    server_name ttrss.example.com;

    include /usr/local/etc/nginx/options/*;

    #설치 중 외부의 접근을 막기 위해서입니다.
    #설치가 끝나면 삭제합니다.
    allow 192.168.1.0/24;
    deny all;

    location / {
        proxy_pass http://192.168.1.13:81/;
        include /usr/local/etc/nginx/otherconfig/proxy.conf;
   }
}

81포트로 접근하는 것을 볼 수 있습니다.

iocage exec Nginx_WAF nginx -t

서버 블록을 작성했다면 구문을 테스트 해 줍니다.

iocage exec Nginx_WAF nginx -s reload

문제가 없다면 nginx 를 재시작 해 줍니다.

이제 https://ttrss.example.com/install 으로 접속해 설치할 수 있습니다.

피드 업데이트

iocage console FEP

감옥으로 로그인 해 줍니다.

RSS 피드를 정기적으로 읽어 와서 피드를 업데이트 해 주어야 합니다. ttrssd 라는 데몬을 활성화 해 주면 됩니다.

sysrc ttrssd_enable="YES"

서비스에 등록하고

sysrc ttrssd_local_db="NO"

로컬db를 사용하지 않기 때문에 local_dbno로 설정하였습니다.

service ttrssd start

ttrssd 를 시작해 줍니다.

접속

https://ttrss.example.com 에서 로그인 할 수 있습니다.

초기 계정은 ID : admin PW : password 입니다.

admin 계정의 비밀번호를 바꾸거나, 새로운 계정을 만들고 admin 계정은 비활성화 하는 것을 추천합니다.

업데이트

service nginx stop && service php-fpm stop

서비스를 정지한 뒤

pkg update && pkg upgrade

패키지를 업데이트 해 준 뒤

chown -R www:www /usr/local/www/tt-rss/

권한 설정을 해 줍니다.

service nginx start && service php-fpm start && service ttrssd restart

서비스를 시작해 줍니다.

TT-RSS 를 업데이트 한 후, ttrss 에 관리자로 로그인 하면 데이터베이스를 업데이트 해야 한다는 화면이 나타납니다. 데이터베이스를 업데이트 해 주면 TT-RSS 를 정상적으로 이용할 수 있습니다.

마치면서

다음 포스팅은 nextcloud 를 다룰 것입니다.

시리즈 네비게이션<< 블로그 – WordPress웹하드 – NextCloud >>

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다