본문 바로가기

프로그래밍

Drupal(드루팔)로 웹사이트 구축하기

728x90
반응형

웹사이트 구축 및 관리를 위해 CMS(Content Management System)를 찾아보던 도중 Drupal이라는 플랫폼을 발견했다. 따라서 지금부터 Drupal로 웹사이트를 구축하는 과정을 기록하고자 한다.

 

Drupal이란?

한마디로 PHP 기반 오픈소스 CMS 서비스다. CMS를 통해 웹사이트 유저를 관리하거나 게시물을 관리할 수 있다. 즉 이를통해 상업적인 웹사이트도 마치 블로그를 관리하듯 편하게 관리할 수 있다. 비슷한 플랫폼으로 워드프레스, Wix 그리고 Joomla 등이 있다.

 

Drupal 공식 사이트 - https://www.drupal.org/

창립자이자 수석 개발자  - 드리스 보이타르트(https://dri.es/blog)(HTTP Headers Analyzer 제공)

 

 

Drupal 점유율

출처: https://w3techs.com/technologies/overview/content_management
출처: w3teches(https://w3techs.com/technologies/details/cm-drupal)

워드프레스가 큰 점유율을 차지하고 있지만 여러 단점들이 있기 때문에 Drupal을 선택했다. 예를들어 Drupal은 비교적 빠른데다가 방대한 커뮤니티가 있고, 확장성이 아주 좋다. 가령 Shopify 같은 경우 커머스에 특화되어 있지만, Drupal은 커머스에 국한되지 않는다. 또한 Wix같은 플랫폼처럼 폐쇄적이지 않기 때문에 코드레벨의 수정이 용이하고, 웹서버에 설치하여 직접 서비스를 할 수 있다.

 

특히 워낙 오래된 플랫폼이다 보니 방대한 모듈을 보유하고 있다. 예를들어 Content-Security-Policy를 설정하고 싶다면 그와 관련된 seckit 같은 모듈을 설치하면 쉽게 설정 및 관리할 수 있다.

 

 

권장사양

PHP

https://www.drupal.org/docs/system-requirements/php-requirements

MySQL

Drupal 8 -> Mysql 5.7

Drupal 9+ -> Mysql 5.7.8 이상

 

Apache

Drupal 9 -> Apache 2.4.7

Drupal 8 -> Apache 2.x

 

Nginx

legacy 버전(0.7.x, 0.8.x, 1.0.x, 1.2.x), stable 버전 1.8.x, mainline 버전 1.9.x

 

설치방법

Drupal은 Acquia 혹은 Pantheon 등 클라우드 플랫폼을 통해 쉽게 구축할 수 있다. 만약 직접 서버에 설치하고 싶다면 아래 순서로 진행하면 된다. 데비안 서버 기준이다.

 

apt 업데이트 및 업그레이드(-y 플래그로 자동 yes 입력)

sudo apt-get update -y
sudo apt-get upgrade -y

 

wget, git, unzip 등 필요에 따라 설치

sudo apt-get install wget git unzip nano -y

 

Apache 설치

sudo apt-get install apache2 -y

 

Apache 명령어

// apache 시작
sudo service apache2 start

// apache 중지
sudo service apache2 stop

// 시스템 재부팅 시 자동실행
sudo systemctl enable apache2

 

PHP 설치

sudo apt-get install php libapache2-mod-php php-cli php-mcrypt php-intl php-mysql php-curl php-gd php-soap php-xml php-zip -y

 

php.ini 파일 수정 필요시(memory_limit 등)

sudo vi /etc/php/7.0/cli/php.ini

 

Drupal 다운 및 압축해제

wget https://www.drupal.org/download-latest/tar.gz
tar -xvf tar.gz

 

Drupal 디렉토리를 apache root 위치로 옮기기

sudo mv drupal-9.3.0 /var/www/html/drupal

 

Drupal Permision 설정

sudo chown -R www-data:www-data /var/www/html/drupal
sudo chmod -R 777 /var/www/html/drupal

 

drupal conf 파일 생성 하여 아래 내용 넣어주기

sudo vi /etc/apache2/sites-available/drupal.conf
<VirtualHost *:80>
ServerAdmin admin@example.com
DocumentRoot /var/www/html/drupal
ServerName 192.168.15.189
ServerAlias www.example.com
<Directory "/var/www/html/drupal/">
Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/apache2/drupal-error_log
CustomLog /var/log/apache2/drupal-access_log common
</VirtualHost>

 

virtual host 및 rewrite 모듈 활성화

sudo a2ensite drupal
sudo a2enmod rewrite

 

apache 재시작

sudo service apache2 restart

 

 

http://192.168.15.189로 접속하여 아래와 같은 화면이 뜨면 성공!

 

참고:

https://www.howtoforge.com/tutorial/how-to-install-and-configure-drupal-on-debian-9/

반응형