LEMP 구성에 WordPress를 설치하는 방법

소개

이 자습서에서는 새로 만든 인스턴스에 WordPress를 설치하는 방법을 배웁니다. 우분투 14.04 서버에서의 설치를 보여 드리겠습니다. 이 지침은 이전 버전의 Ubuntu 및 Debian에서도 작동 할 수 있습니다.

이제 시작하겠습니다.

1 단계 : 기존 패키지 업데이트

apt-get update && apt-get upgrade

2 단계 : Nginx 설치

Nginx는 시스템 리소스를 효율적으로 사용하여 대량의 정적 컨텐츠를 제공 할 목적으로 설계된 고성능 경량 웹 서버입니다. Apache와 달리 Nginx는 비동기 이벤트 중심 모델을 사용하여로드시보다 예측 가능한 성능을 제공합니다.

최신 버전의 Nginx (1.6.1)를 설치하기 위해 타사 저장소를 추가하겠습니다.

sudo apt-get install python-software-properties
add-apt-repository -y ppa:rtcamp/nginx
sudo apt-get update 
sudo apt-get install nginx
service nginx start

이제 서버가 작동하고 있는지 테스트 해 봅시다.

http://YOUR-VPS-IP

Nginx의 기본 방문 페이지로 연결됩니다.

3 단계 : PHP 5.5 설치

PHP는 웹 개발에 특히 적합하며 HTML에 포함될 수있는 널리 사용되는 오픈 소스 범용 스크립팅 언어입니다.

서버에 최신 버전의 PHP를 설치합시다.

sudo add-apt-repository ppa:ondrej/php5
sudo apt-get update
sudo apt-get install php5-common php5-mysqlnd php5-xmlrpc php5-curl php5-gd php5-cli php5-fpm php-pear php5-dev php5-imap php5-mcrypt

PHP 버전을 확인하려면 다음 명령을 실행하십시오.

php -v

이와 같은 것을 보게 될 것입니다.

PHP 5.5.16-1+deb.sury.org~trusty+1 (cli) (built: Aug 25 2014 10:24:59)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
withZendOPcache v7.0.4-dev, Copyright (c) 1999-2014, by Zend Technologies

이제 설정을보다 안전하게하기 위해 구성을 약간 변경합니다. 루트 권한으로 기본 php5-fpm 구성 파일을여십시오.

sudo nano /etc/php5/fpm/php.ini

보도 Ctrl + W 및 검색 cgi.fix_pathinfo=. 주석을 해제하고 (delete;) 1을 0으로 변경하십시오. 변경 후 행은 다음과 같아야합니다.

cgi.fix_pathinfo=0

저장 ( Ctrl + O )하고 파일을 닫습니다 ( Ctrl + X ).

이제 다음을 입력하여 PHP 프로세서를 다시 시작하면됩니다.

sudo service php5-fpm restart

4 단계 : MySQL 설치

데이터베이스를 저장하고 관리하려면 MySQL을 설치해야합니다. 콘솔에 다음을 입력하여 쉽게 설치할 수 있습니다.

sudo apt-get install mysql-server

설치 과정에서 MySQL의 루트 암호를 설정하라는 메시지가 표시됩니다. 루트 암호를 설정 한 후에는 MySQL에게 데이터베이스를 저장할 디렉토리 구조를 생성하도록 지시해야합니다.

sudo mysql_install_db

기본 보안 문제를 수정하는 보안 스크립트를 실행하여 마무리하겠습니다.

sudo mysql_secure_installation

MySQL 루트 암호를 입력 n하고 변경하지 않으려면 입력 하십시오. 그런 다음 y모든 질문에 입력하십시오 .


시간대 설정 (조건부)

기본적으로 서버 시간대는 UTC입니다. 다른 시간대에 거주하는 경우 다음 명령을 입력하여 시간대를 변경할 수 있습니다.

sudo dpkg-reconfigure tzdata

이제 LEMP 서버가 시작되어 실행 중입니다.

5 단계 : Wordpress을 제공하도록 Nginx 구성

우리 사이트를위한 Nginx 서버 블록을 만들어 Wordpress 설치를 시작해 봅시다.

sudo nano /etc/nginx/sites-available/wordpress

다음 코드를 붙여 넣습니다.

server {
        listen 80;

        root /var/www/wordpress;
        index index.php index.html index.htm;

        server_name domain.com;

        error_page 404 /404.html;

        error_page 500 502 503 504 /50x.html;
        location = /50x.html {
                root /usr/share/nginx/html;
        } 
location / {
                # try_files $uri $uri/ =404;
                try_files $uri $uri/ /index.php?q=$uri&$args;
        }


        location ~ \.php$ {
                try_files $uri =404;
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;
        }

location = /favicon.ico {
        access_log off;
        log_not_found off;
        expires max;
}
location = /robots.txt {
        access_log off;
        log_not_found off;
}

# Cache Static Files For As Long As Possible
location ~*
\.(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|css|rss|atom|js|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)$
{
        access_log off;
        log_not_found off;
        expires max;
}
# Security Settings For Better Privacy Deny Hidden Files
location ~ /\. {
        deny all;
        access_log off;
        log_not_found off;
}
# Return 403 Forbidden For readme.(txt|html) or license.(txt|html)
if ($request_uri ~* "^.+(readme|license)\.(txt|html)$") {
    return 403;
}
# Disallow PHP In Upload Folder
location /wp-content/uploads/ {
        location ~ \.php$ {
                deny all;
        }
}
}

이것은 permalinks를 지원하는 잘 조정 된 Wordpress 구성 파일입니다. 저장 ( Ctrl + O )하고 파일을 닫습니다 ( Ctrl + X ). 심볼릭 링크를 통해 서버 블록을 활성화하십시오 :

sudo ln -s /etc/nginx/sites-available/wordpress /etc/nginx/sites-enabled/wordpress

다음으로 Nginx 기본 서버 블록을 삭제합니다.

sudo rm /etc/nginx/sites-enabled/default

이제 기본 Nginx 구성 파일을 조정하겠습니다.

sudo nano /etc/nginx/nginx.conf

작업자 프로세스 수는 인스턴스의 코어 수와 같아야합니다.

user www-data;
worker_processes 1;
pid /run/nginx.pid;

사용 epoll을 추가하십시오 ; 이벤트 블록에.

events {
worker_connections 4096;
multi_accept on;
use epoll;
}

client_max_body_sizeserver_tokens off 지시문을 추가하십시오 . keepalive_timeout 을 30 초로 설정하십시오 .

        ##
        # Basic Settings
        ##

sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 30;
types_hash_max_size 2048;
server_tokens off;
client_max_body_size  100m;


        # server_names_hash_bucket_size 64;
        # server_name_in_redirect off;

include /etc/nginx/mime.types;
default_type application/octet-stream;

전체 Gzip 설정 블록이 다음과 같은지 확인하십시오.

        ##
        # Gzip Settings
        ##

gzip on;
gzip_disable "msie6";

gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

저장 ( Ctrl + O )하고 파일을 닫습니다 ( Ctrl + X ). 그런 다음 서버를 다시 시작하십시오.

sudo service nginx restart

6 단계 : PHP 구성

WordPress 사이트에 2MB 이상의 파일을 업로드하려면 php.ini 에서 PHP ��로드 크기 변수를 늘려야 합니다.

sudo nano /etc/php5/fpm/php.ini

이제 Ctrl + W를 누르고 " upload_max_filesize "를 검색 하여 100m으로 설정하십시오 .

upload_max_filesize=100M

post_max_size 와 동일하게 수행하십시오 . post_max_sizeupload_max_filesize 와 같거나 커야 합니다.

post_max_size=100M

PHP를 다시 시작하십시오.

sudo service php5-fpm restart

7 단계 : MySQL 데이터베이스 설정

이 단계에서는 데이터베이스 사용자 및 테이블을 작성합니다. 계속해서 MySQL 쉘에 로그인하십시오 :

mysql -u root -p

MySQL 루트 비밀번호를 사용하여 로그인하십시오. 데이터베이스의 사용자와 함께 WordPress 데이터베이스를 작성해야합니다. 먼저, 데이터베이스를 만들어 봅시다 (원하는 이름을 자유롭게 지정하십시오).

CREATE DATABASE wordpress;
Query OK, 1 row affected (0.00 sec)

그런 다음 새 사용자를 만들어야합니다. 데이터베이스, 이름 및 비밀번호를 원하는대로 바꾸십시오.

CREATE USER wordpressuser@localhost;
Query OK, 0 rows affected (0.00 sec)

새 사용자의 비밀번호를 설정하십시오.

SET PASSWORD FOR wordpressuser@localhost= PASSWORD("password");
Query OK, 0 rows affected (0.00 sec)

새 사용자에게 모든 권한을 부여하여 완료하십시오. 이 명령이 없으면 WordPress 설치 프로그램을 시작할 수 없습니다.

GRANT ALL PRIVILEGES ON wordpress.* TO wordpressuser@localhost IDENTIFIED BY 'password';
Query OK, 0 rows affected (0.00 sec)

그런 다음 MySQL을 새로 고칩니다.

FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

MySQL 쉘을 종료하십시오.

exit

8 단계 : WordPress 파일 설치

거의 다 끝났습니다. 워드 프레스 설치를 진행해 봅시다.

먼저 사이트 루트 디렉토리로 이동하십시오.

mkdir /var/www/
cd /var/www/

이제 최신 버전의 WordPress를 다운로드하십시오.

wget http://wordpress.org/latest.tar.gz

아카이브에서 추출하십시오.

tar -xzvf latest.tar.gz

의 권한 부여 /var/www/wordpresswww-data사용합니다. 향후 WordPress 플러그인 자동 업데이트 및 SFTP를 사용한 파일 편집이 가능합니다.

sudo chown -R www-data:www-data wordpress/
sudo usermod -a -G www-data www-data

끝났습니다! 새로운 워드 프레스 사이트가 준비되었습니다. 웹 사이트로 이동하여 설치를 완료하십시오.



Leave a Comment

AI가 랜섬웨어 공격의 증가와 싸울 수 있습니까?

AI가 랜섬웨어 공격의 증가와 싸울 수 있습니까?

랜섬웨어 공격이 증가하고 있지만 AI가 최신 컴퓨터 바이러스를 처리하는 데 도움이 될 수 있습니까? AI가 답인가? AI boone 또는 bane인지 여기에서 읽으십시오.

ReactOS: 이것이 Windows의 미래입니까?

ReactOS: 이것이 Windows의 미래입니까?

오픈 소스이자 무료 운영 체제인 ReactOS가 최신 버전과 함께 제공됩니다. 현대 Windows 사용자의 요구 사항을 충족하고 Microsoft를 무너뜨릴 수 있습니까? 이 구식이지만 더 새로운 OS 환경에 대해 자세히 알아보겠습니다.

WhatsApp 데스크톱 앱 24*7을 통해 연결 유지

WhatsApp 데스크톱 앱 24*7을 통해 연결 유지

Whatsapp은 마침내 Mac 및 Windows 사용자용 데스크톱 앱을 출시했습니다. 이제 Windows 또는 Mac에서 Whatsapp에 쉽게 액세스할 수 있습니다. Windows 8 이상 및 Mac OS 10.9 이상에서 사용 가능

AI는 어떻게 프로세스 자동화를 다음 단계로 끌어올릴 수 있습니까?

AI는 어떻게 프로세스 자동화를 다음 단계로 끌어올릴 수 있습니까?

인공 지능이 소규모 회사에서 어떻게 인기를 얻고 있으며 어떻게 인공 지능이 성장할 가능성을 높이고 경쟁자가 우위를 점할 수 있는지 알아보려면 이 기사를 읽으십시오.

macOS Catalina 10.15.4 추가 업데이트로 인해 해결보다 더 많은 문제가 발생함

macOS Catalina 10.15.4 추가 업데이트로 인해 해결보다 더 많은 문제가 발생함

최근 Apple은 문제를 해결하기 위해 macOS Catalina 10.15.4 추가 업데이트를 출시했지만 이 업데이트로 인해 Mac 컴퓨터의 브릭킹으로 이어지는 더 많은 문제가 발생하는 것 같습니다. 자세히 알아보려면 이 기사를 읽어보세요.

빅데이터의 13가지 상용 데이터 추출 도구

빅데이터의 13가지 상용 데이터 추출 도구

빅데이터의 13가지 상용 데이터 추출 도구

저널링 파일 시스템이란 무엇이며 어떻게 작동합니까?

저널링 파일 시스템이란 무엇이며 어떻게 작동합니까?

우리 컴퓨터는 모든 데이터를 저널링 파일 시스템이라고 하는 체계적인 방식으로 저장합니다. 검색을 누르는 즉시 컴퓨터에서 파일을 검색하고 표시할 수 있는 효율적인 방법입니다.https://wethegeek.com/?p=94116&preview=true

기술적 특이점: 인류 문명의 먼 미래?

기술적 특이점: 인류 문명의 먼 미래?

과학이 빠른 속도로 발전하고 우리의 많은 노력을 인수함에 따라 설명할 수 없는 특이점에 처할 위험도 높아집니다. 특이점이 우리에게 무엇을 의미할 수 있는지 읽어보십시오.

26가지 빅 데이터 분석 기법에 대한 통찰: 1부

26가지 빅 데이터 분석 기법에 대한 통찰: 1부

26가지 빅 데이터 분석 기법에 대한 통찰: 1부

2021년 의료 분야에서 인공 지능의 영향

2021년 의료 분야에서 인공 지능의 영향

의료 분야의 AI는 지난 수십 년 동안 큰 도약을 했습니다. 따라서 의료 분야에서 AI의 미래는 여전히 나날이 성장하고 있습니다.