본문 바로가기
Programming/Server

URL 단축 서버 만들기 (YOURLS - Your Own URL Shortener)

by BACKK0M 2019. 10. 10.
반응형

이번 포스팅에서는 단축 URL을 생성해주는 서버를 만들어보고자 합니다.

 

 

제가 사용할 OS는 Ubuntu 18.04.2 이며, 사용할 패키지는 YOURLS 입니다.

 

우선 우분투의 패키지 업데이트 및 업그레이드를 진행해줍니다.

$ sudo apt-get install update && sudo apt-get install upgrade

 

APM(Apache PHP Mysql)을 설치해줍니다.

$ sudo apt-get install apache2

$ sudo apt-get install mysql-server mysql-client

$ sudo apt-get install php libapache2-mod-php php-xml php-gd php-mysql

 

Mysql을 실행하여 YOURLS를 사용하기 위한 DB를 생성해줍니다.

$ sudo mysql

mysql> CREATE DATABASE yourls;

msqyl> GRANT ALL PRIVILEGES ON yourls.* TO 'yourls'@'localhost' IDENTIFIED BY "비밀번호";

mysql> FLUSH PRIVILEGES;

 

이제 YOURLS를 다운받아줍니다. 원하는 디렉토리에 YOURLS를 다운받습니다.

$ cd 원하는 디렉토리

$ sudo git clone https://github.com/YOURLS/YOURLS.git 

 

user/config-sample.php를 user/config.php로 이름을 바꿔 복사해줍니다.

$ cd YOURS/user

$ sudo cp config-sample.php config.php

 

DB 연결을 위해 config.php 파일을 수정해줍니다.

$ sudo nano config.php

Mysql에 해당하는 부분만 수정해줍니다.

your db user name에 yourls

your db password에 설정한 비밀번호

를 기입해주시면 됩니다.

 

웹사이트 URL을 적어줍니다.

http://your-own-domain-here.com 부분에 웹사이트 URL을 적어주시면 됩니다.

 

시간대를 설정해줍니다. 한국의 경우 offset 값은 9 입니다.

 

관리 계정으로 사용할 아이디와 비밀번호를 입력해줍니다.

username에 아이디

password에 비밀번호

 

아파치를 재시작해줍니다.

$ sudo service apache2 restart

 

이제 관리 페이지로 들어가 설치를 진행해줍니다.

http://config-파일에서-입력했던-url/admin/install.php

Install YOURLS 버튼을 클릭해줍니다.

 

.htaccess 파일이 없다는 문구가 나타나는데 무시하셔도 됩니다.

 

.htaccess 파일을 만들어야 리다이렉트가 됩니다. .htaccess 파일을 만듭니다.

$ cd /var/www/html

$ sudo nano .htaccess

만약 아파치의 root 디렉토리에 YOURLS 파일들이 존재한다면 아래와 같이 작성하시면 됩니다.

 

# BEGIN YOURLS

<IfModule mod_rewrite.c>

RewriteEngine On

RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^.*$ /yourls-loader.php [L]

</IfModule>

# END YOURLS

 

서브 디렉토리에 YOURLS 파일들이 존재한다면 아래와 같이 작성합니다.

 

# BEGIN YOURLS

<IfModule mod_rewrite.c>

RewriteEngine On

RewriteBase /somedir/

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^.*$ /디렉토리명/yourls-loader.php [L]

</IfModule>

# END YOURLS

 

아파치 설정 파일을 수정해줍니다.

$ sudo nano /etc/apache2/apache2.conf

Directory /var/www의 AllowOverride None을 ALL로 수정합니다.

저장 후 a2enmod 모듈을 사용할 수 있도록 변경한 후 아파치를 재시작해줍니다.

$ sudo a2enmod rewrite

$ sudo service apache2 restart

 

YOURLS Administration Page 링크를 누릅니다. 그러면 로그인 창이 나타나는데 config 파일에 적었던 아이디와 비밀번호를 입력하시면 됩니다.

 

 

로그인이 완료되면 아래와 같이 페이지가 나타나게 됩니다. 아래와 같이 페이지가 나타나면 성공적으로 설치가 된것입니다.

 

Enter the URL 부분에 URL을 입력하고 Shorten The URL 버튼을 누르게 되면 단축이 됩니다.

 

이상으로 포스팅을 마치도록 하겠습니다.

감사합니다:)

반응형