웹사이트 검색

Nginx와 함께 Automad CMS를 설치하고 Debian 10에서 SSL을 암호화할 수 있습니다.


이 페이지에서

  1. 요구 사항\n
  2. 전제 조건
  3. 초기 단계
  4. 1단계 - PHP 및 필요한 PHP 확장 설치\n
  5. 2단계 - acme.sh 클라이언트 설치 및 Lets Encrypt 인증서 획득(선택 사항)\n
  6. 3단계 - NGINX 설치 및 구성
  7. 4단계 - Automad CMS 설치
  8. 5단계 - Automad 설치 완료
  9. 링크

Automad는 파일 기반 콘텐츠 관리 시스템(CMS)이자 PHP로 작성된 템플릿 엔진입니다. 모든 콘텐츠는 데이터베이스 대신 사람이 읽을 수 있는 텍스트 파일에 저장됩니다. 따라서 Automad 사이트는 완전히 이식 가능하고 설치가 쉬우며 Git 또는 Mercurial을 사용하여 버전을 제어할 수 있습니다. 그럼에도 불구하고 검색 및 태그 지정과 같은 데이터베이스 기능을 제공합니다. 내장된 템플릿 엔진을 사용하면 미숙한 개발자와 디자이너도 아름다운 테마와 템플릿을 만들 수 있습니다. 이 튜토리얼에서는 NGINX를 웹 서버로 사용하여 Debian 10(buster) 시스템에서 Automad CMS 설치 및 설정을 진행합니다.

요구 사항

Automad CMS를 설치하고 실행하기 위한 요구 사항은 다음과 같습니다.

  • PHP 버전 5.4 이상.
  • Nginx 또는 Apache와 같은 웹 서버 소프트웨어.\n

전제 조건

  • Debian 10(버스터) 운영체제입니다.
  • sudo 권한이 있는 루트가 아닌 사용자.\n

초기 단계

Debian 버전 확인:

lsb_release -ds
# Debian GNU/Linux 10 (buster)

시간대 설정:

sudo dpkg-reconfigure tzdata

운영 체제 패키지(소프트웨어)를 업데이트합니다. 이는 운영 체제 기본 소프트웨어 패키지에 대한 최신 업데이트 및 보안 수정 사항이 있는지 확인하기 때문에 필수적인 첫 번째 단계입니다.

sudo apt update && sudo apt upgrade -y

Debian 운영 체제의 기본 관리에 필요한 몇 가지 필수 패키지를 설치합니다.

sudo apt install -y curl wget vim git unzip socat bash-completion apt-transport-https

1단계 - PHP 및 필요한 PHP 확장 설치

PHP와 필수 PHP 확장을 설치합니다.

sudo apt install -y php php-cli php-fpm php-common php-mbstring php-xmlrpc php-soap php-gd php-xml php-curl php-zip

모듈로 컴파일된 PHP를 표시하려면 다음을 실행할 수 있습니다.

php -m

ctype
curl
exif
fileinfo
. . .
. . .

버전 확인:

php --version

# PHP 7.3.4-2 (cli) (built: Apr 13 2019 19:05:48) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.3.4, Copyright (c) 1998-2018 Zend Technologies
# with Zend OPcache v7.3.4-2, Copyright (c) 1999-2018, by Zend Technologies

PHP-FPM 서비스는 Debian 10 시스템에서 재부팅 시 자동으로 시작되고 활성화되므로 수동으로 시작하고 활성화할 필요가 없습니다. 다음 단계로 넘어갈 수 있습니다.

2단계 - acme.sh 클라이언트 설치 및 Lets Encrypt 인증서 획득(선택 사항)

HTTPS로 포럼을 보호할 필요는 없지만 사이트 트래픽을 보호하는 것이 좋습니다. Lets Encrypt에서 TLS 인증서를 얻기 위해 acme.sh 클라이언트를 사용합니다. Acme.sh는 종속성이 없는 Lets Encrypt에서 TLS 인증서를 얻기 위한 간단한 UNIX 셸 소프트웨어입니다.

acme.sh 다운로드 및 설치:

sudo su - root
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh
./acme.sh --install --accountemail
source ~/.bashrc
cd ~

acme.sh 버전 확인:

acme.sh --version
# v2.8.2

도메인/호스트 이름에 대한 RSA 및 ECC/ECDSA 인증서 받기:<br>

# RSA 2048
acme.sh --issue --standalone -d example.com --keylength 2048
# ECDSA
acme.sh --issue --standalone -d example.com --keylength ec-256

테스트를 위해 가짜 인증서를 원하는 경우 위 명령에 --staging 플래그를 추가할 수 있습니다.

위 명령을 실행하면 인증서가 다음 위치에 있게 됩니다.

  • RSA의 경우: /home/username/example.com 디렉토리.
  • ECC/ECDSA의 경우: /home/username/example.com_ecc 디렉터리.

발급된 인증서를 나열하려면 다음을 실행할 수 있습니다.

acme.sh --list

인증서를 저장할 디렉터리를 만듭니다. /etc/letsencrypt 디렉토리를 사용하겠습니다.

mkdir -p /etc/letsecnrypt/example.com
sudo mkdir -p /etc/letsencrypt/example.com_ecc

인증서를 /etc/letsencrypt 디렉토리에 설치/복사합니다.

# RSA
acme.sh --install-cert -d example.com --cert-file /etc/letsencrypt/example.com/cert.pem --key-file /etc/letsencrypt/example.com/private.key --fullchain-file /etc/letsencrypt/example.com/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"
# ECC/ECDSA
acme.sh --install-cert -d example.com --ecc --cert-file /etc/letsencrypt/example.com_ecc/cert.pem --key-file /etc/letsencrypt/example.com_ecc/private.key --fullchain-file /etc/letsencrypt/example.com_ecc/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"

모든 인증서는 60일마다 자동으로 갱신됩니다.

인증서를 얻은 후 루트 사용자에서 종료하고 일반 sudo 사용자로 돌아갑니다.

exit

3단계 - NGINX 설치 및 구성

Debian 저장소에서 NGINX를 다운로드하고 설치합니다.

sudo apt install -y nginx

NGINX 버전 확인:

sudo nginx -v
# nginx version: nginx/1.14.2

sudo vim /etc/nginx/sites-available/automad.conf를 실행하고 다음 구성으로 파일을 채웁니다.

server {

  listen [::]:443 ssl http2;
listen 443 ssl http2;
listen [::]:80;
listen 80;
# RSA
ssl_certificate /etc/letsencrypt/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com/private.key;
# ECC
ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com_ecc/private.key;
server_name example.com; root /var/www/automad; index index.php index.html; client_max_body_size 100M; location / { try_files $uri $uri/ /index.php$is_args$args; } location ~ \.php$ { fastcgi_index index.php; fastcgi_pass unix:/var/run/php/php7.3-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }

파일을 sites-enabled 디렉토리에 연결하여 새 automad.conf 구성을 활성화합니다.

sudo ln -s /etc/nginx/sites-available/automad.conf /etc/nginx/sites-enabled/

구문 오류에 대한 NGINX 구성 확인:

sudo nginx -t

Nginx를 다시 로드합니다.

sudo systemctl reload nginx.service

4단계 - Automad CMS 설치

Automad용 문서 루트 디렉토리를 생성합니다.

sudo mkdir -p /var/www/automad

문서 루트로 이동합니다.

cd /var/www/automad

curl을 사용하여 최신 Automad CMS 릴리스를 다운로드합니다. 최신 릴리스가 있는 경우 버전 번호를 높이는 것을 잊지 마십시오.

sudo curl -O -J -L https://automad.org/download

zip 아카이브의 압축을 풉니다.

sudo unzip marcantondahmen-automad-6fff2a0456dc.zip

모든 Automad 파일을 문서 루트로 이동하고 다운로드한 zip 아카이브를 제거합니다.

sudo mv marcantondahmen-automad-6fff2a0456dc/* . && sudo mv marcantondahmen-automad-6fff2a0456dc/.* .
sudo rm marcantondahmen-automad-6fff2a0456dc.zip
sudo rmdir marcantondahmen-automad-6fff2a0456dc

/var/www/automad 디렉토리의 소유권을 www-data:로 변경합니다.

sudo chown -R www-data:www-data /var/www/automad

5단계 - Automad 설치 완료

마지막 단계로 대시보드라는 브라우저 기반 사용자 인터페이스를 사용하기 위한 사용자 계정을 만듭니다. 따라서 https://example.com/dashboard로 이동하여 지침을 따르십시오.

Automad 대시보드를 사용하려면 계정을 만들어야 합니다.

양식을 사용하여 사용자 계정을 만들고 생성된 파일을 컴퓨터에 다운로드합니다. 다운로드한 파일을 Automad 설치 디렉토리 내의 "/config" 디렉토리로 이동해야 합니다.

그런 다음 Automad 대시보드에 로그인할 수 있습니다.

결국 Automad 관리 인터페이스가 표시됩니다.

그게 다야. 오토마드 설치가 완료되었습니다.

연결

  • https://automad.org/
  • https://bitbucket.org/marcantondahmen/automad/