WordPress는 전세계 웹 사이트의 4분의 1을 넘는 가장 인기 있는 오픈 소스 블로그 및 CMS 플랫폼입니다. PHP와 MySQL을 기반으로 하며 무료 및 프리미엄 플러그인과 테마를 통해 확장할 수 있는 다양한 기능을 제공합니다. WordPress는 온라인 상점, 웹 사이트 또는 블로그를 만드는 가장 간단한 방법입니다.
Ubuntu 18.04 기계에 WordPress를 설치하는 방법을 보여드리겠습니다. 이 프로세스는 완료하는 데 10분도 걸리지 않는 매우 간단한 프로세스입니다.
Nginx가 포함된 LEMP 스택을 웹 서버, SSL 인증서, 최신 PHP 7.2 및 MySQL/MariaDB를 데이터베이스 서버로 사용합니다.
필수 구성 요소
이 튜토리얼을 계속하기 전에 다음 필수 구성 요소를 충족했는지 확인합니다.
- 서버 공용 IP를 가리키는 도메인 이름이 있습니다. example.com을 사용
- sudo 권한을 가진 사용자로 로그인
- Nginx를 설치
도메인에 대해 설치된 SSL 인증서입니다. 다음 지침에 따라 무료 SSL 암호화 인증서를 설치할 수 있습니다.
패키지 인덱스 및 시스템 패키지를 최신 버전으로 업데이트합니다.
sudo apt update
sudo apt upgrade
MySQL 데이터베이스 생성
WordPress는 MySQL 데이터베이스를 사용하여 모든 데이터를 저장합니다. 첫 번째 단계는 MySQL 데이터베이스, MySQL 사용자 계정을 생성하고 데이터베이스에 대한 액세스 권한을 부여하는 것입니다.
Ubuntu 서버에 MySQL 또는 MariaDB가 아직 설치되어 있지 않은 경우 이전 포스팅을 참조하여 따라 설치할 수 있습니다.
다음 명령을 입력하여 MySQL 셸에 로그인하고 메시지가 표시되면 암호를 입력합니다.
mysql -u root -p
MySQL 셸 내에서 다음 SQL 문을 실행하여 wordpress라는 데이터베이스, wordpressuser라는 사용자 및 사용자에게 필요한 모든 권한을 부여합니다.
CREATE DATABASE wordpress CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
GRANT ALL ON wordpress.* TO 'wordpressuser'@'localhost' IDENTIFIED BY 'change-with-strong-password';
FLUSH PRIVILEGES;
EXIT;
위의 명령을 실행하면 WordPress 인스턴스에서 사용할 새 MySQL 데이터베이스와 사용자 계정이 생성됩니다.
PHP 설치
WordPress에는 Ubuntu 18.04의 기본 PHP 버전인 PHP 7.2가 완전히 지원되며 권장됩니다.
PHP 및 필요한 모든 PHP 확장을 설치하려면 다음 명령을 실행합니다.
sudo apt install php7.2-cli php7.2-fpm php7.2-mysql php7.2-json php7.2-opcache php7.2-mbstring php7.2-xml php7.2-gd php7.2-curl
우리는 Nginx를 웹 서버로 사용하기 때문에 PHP-FPM을 설치했습니다.
설치 프로세스가 완료되면 PHP-FPM 서비스가 자동으로 시작됩니다.
Wordpress 다운로드
Wordpress 아카이브를 다운로드하기 전에 먼저 WordPress 파일을 저장할 디렉터리를 만듭니다.
sudo mkdir -p /var/www/html/example.com
다음 단계에서는 다음 wget 명령을 사용하여 WordPress 다운로드 페이지에서 최신 버전의 WordPress를 다운로드합니다.
cd /tmp
wget https://wordpress.org/latest.tar.gz
다운로드가 완료되면 WordPress 아카이브의 압축을 풀고 추출된 파일을 도메인의 문서 루트 디렉터리로 이동합니다.
tar xf latest.tar.gz
sudo mv /tmp/wordpress/* /var/www/html/example.com/
마지막으로 웹 서버가 사이트의 파일 및 디렉토리에 완전히 액세스할 수 있도록 올바른 사용 권한을 설정해야 합니다.
Nginx와 PHP 모두 www-data 사용자 및 그룹으로 실행 중이므로 올바른 소유권을 설정하려면 다음 chown 명령을 실행합니다.
sudo chown -R www-data: /var/www/html/example.com
Nginx 구성
이 튜토리얼의 필수 구성 요소를 확인하지 않으면 시스템에 SSL 인증서가 설치된 Nginx가 이미 설치되어 있어야 합니다.
WordPress 인스턴스에 대한 새 서버 블록을 생성하기 위해 공식 Nginx 사이트의 Nginx Recipe를 사용합니다.
텍스트 편집기를 열고 다음 파일을 만듭니다.
# /etc/nginx/sites-available/example.com
# Redirect HTTP -> HTTPS
server {
listen 80;
server_name www.example.com example.com;
include snippets/letsencrypt.conf;
return 301 https://example.com$request_uri;
}
# Redirect WWW -> NON WWW
server {
listen 443 ssl http2;
server_name www.example.com;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem;
include snippets/ssl.conf;
return 301 https://example.com$request_uri;
}
server {
listen 443 ssl http2;
server_name example.com;
root /var/www/html/example.com;
index index.php;
# SSL parameters
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem;
include snippets/ssl.conf;
include snippets/letsencrypt.conf;
# log files
access_log /var/log/nginx/example.com.access.log;
error_log /var/log/nginx/example.com.error.log;
location = /favicon.ico {
log_not_found off;
access_log off;
}
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.2-fpm.sock;
}
location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ {
expires max;
log_not_found off;
}
}
example.com을 Wordpress 도메인으로 교체하고 SSL 인증서 파일의 올바른 경로를 설정해야 합니다. 이 구성에 사용된 스니펫은 이 가이드 에 작성되어 있습니다.
사이트 사용 디렉토리에 대한 심볼 링크를 만들어 서버 차단을 활성화합니다.
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
Nginx 서비스를 다시 시작하기 전에 구문 오류가 없는지 테스트합니다.
sudo nginx -t
오류가 없는 경우 출력은 다음과 같아야 합니다.
# nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
# nginx: configuration file /etc/nginx/nginx.conf test is successful
다음을 입력하여 Nginx를 다시 시작할 수 있습니다.
sudo systemctl restart nginx
WordPress 설치 완료
Wordpress가 다운로드되고 서버 구성이 완료되었으므로 웹 인터페이스를 통해 설치를 완료할 수 있습니다.
브라우저를 열고 도메인을 입력하면 다음과 유사한 화면이 나타납니다.
사용할 언어를 선택하고 계속 버튼을 클릭합니다.
다음으로, 다음 정보 페이지가 나타납니다. 시작! 버튼을 클릭합니다.
다음 화면에서 설치 마법사가 데이터베이스 연결 세부 정보를 입력하라는 메시지를 표시합니다. 이전에 작성한 MySQL 사용자 및 데이터베이스 세부 정보를 입력합니다.
설치 워드프레스 설치 실행을 누릅니다.
다음 단계에서는 WordPress 사이트의 이름을 입력하고 사용자 이름을 선택해야 합니다(보안 목적으로 "admin"을 입력하지 않음).
설치 관리자가 자동으로 강력한 암호를 생성합니다. 이 암호를 저장하는 것을 잊지 마세요. 사용자가 직접 암호를 설정할 수도 있습니다.
전자 메일 주소를 입력하고 검색 엔진이 사이트를 인덱싱하지 않도록 할지 여부를 선택합니다(권장하지 않음).
WordPress 설치를 클릭하면 설치가 완료되면 WordPress가 설치되었음을 알리는 페이지가 표시됩니다. WordPress 로그인 양식에 액세스하려면 로그인 버튼을 클릭합니다.
사용자 이름과 암호를 입력하고 로그인 버튼을 클릭합니다.
로그인하면 WordPress 관리 대시보드로 리디렉션됩니다.
여기서 새 테마 및 플러그인을 설치하여 WordPress 설치를 사용자 정의할 수 있습니다.
'SW > 리눅스' 카테고리의 다른 글
Linux : 그룹에 사용자 추가하는 방법, 예제, 명령어 (0) | 2020.12.22 |
---|---|
Debian 9 : Apache 설치하는 방법, 예제, 명령어 (0) | 2020.12.21 |
Ubuntu 18.04 : Vagrant 설치하는 방법, 예제, 명령어 (0) | 2020.12.19 |
Ubuntu 18.04 : 젠킨스 설치하는 방법, 예제, 명령어 (0) | 2020.12.18 |
Ubuntu 18.04 : R 설치하는 방법, 예제, 명령어 (0) | 2020.12.17 |