Ubuntu Server / Nginx, PHP, MariaDB 설치하고 설정하기

Nginx

설치

Nginx를 설치합니다.

apt install nginx

만약 방화벽을 사용하고 있다면 포트를 열어줍니다.

ufw allow 'Nginx Full'

서버 주소로 접속했을 때 다음과 같이 나오면 제대로 된 것입니다.

시작, 정지 등

Nginx를 시작합니다.

systemctl start nginx

Nginx를 멈춥니다.

systemctl stop nginx

Nginx를 재시작합니다.

systemctl restart nginx

Nginx를 다시 로드합니다.

systemctl reload nginx

Nginx를 설치하면 부팅 시 자동으로 시작하게 설정됩니다. 만약 자동 시작을 해제하고 싶다면 다음과 같이 명령합니다.

systemctl disable nginx

자동 시작하도록 하려면 다음과 같이 명령합니다.

systemctl enable nginx

PHP

설치

php-fpm을 설치합니다.

apt install php-fpm

설정

/etc/nginx/sites-available/default 파일을 열고 다음 코드를 찾습니다.

#location ~ \.php$ {
#	include snippets/fastcgi-php.conf;
#
#	# With php-fpm (or other unix sockets):
#	fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
#	# With php-cgi (or other tcp sockets):
#	fastcgi_pass 127.0.0.1:9000;
#}

다음처럼 바꿉니다.

location ~ \.php$ {
  include snippets/fastcgi-php.conf;
#
#	# With php-fpm (or other unix sockets):
  fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
#	# With php-cgi (or other tcp sockets):
#	fastcgi_pass 127.0.0.1:9000;
}

index.php를 자동 인식하게 하려면

index index.html index.htm index.nginx-debian.html;

에 index.php를 추가합니다.

index index.html index.htm index.nginx-debian.html index.php;

Nginx를 다시 로드 해야 적용됩니다.

service nginx reload

테스트

/var/www/html/ 디렉토리에 phpinfo.php를 만들고 다음 코드를 입력하고 저장합니다.

<?php phpinfo(); ?>

웹브라우저로 server-ip/phpinfo.php로 접속했을 때 다음과 같이 나오면 제대로 된 것입니다.

MariaDB

설치

MariaDB와 php-mysql을 설치합니다.

apt install mariadb-server php-mysql

설정

다음과 같이 명령하여 root 계정 비밀번호 등 몇 가지를 설정합니다.

mysql_secure_installation

웹에서 root 계정 사용

웹에서 root 계정을 사용할 수 있게 하려면 수정해야 합니다. MariaDB에 접속합니다.

mysql -uroot -p

다음을 차례대로 입력합니다.

use mysql;
update user set plugin='' where user='root';
flush privileges;
quit;

같은 카테고리의 다른 글

Ubuntu Server / vsftpd로 FTP 서버 구축하기

Ubuntu Server / vsftpd로 FTP 서버 구축하기

vsftpd vsftpd(Very Secure FTP Daemon)는 유닉스와 리눅스에서 사용할 수 있는 가벼운 FTP 서버입니다. 주요 특징은 다음과 같습니다. Virtual IP configurations Virtual users Standalone or inetd operation Powerful per-user configurability Bandwidth throttling Per-source-IP configurability Per-source-IP limits IPv6 Encryption support through SSL integration 설치 vsftpd는 우분투 패키지에 포함되어 있으므로 다음과 같이 명령하여 설치할 수 있습니다. apt install vsftpd 방화벽을 사용 중이라면 다음과 같이 명령하여 포트를 열어줍니다. ufw ...

Ubuntu Server / 언어 변경하는 방법

Ubuntu Server / 언어 변경하는 방법

현재 언어 확인하기 locale 명령어로 현재 언어가 무엇인지 확인할 수 있습니다. root@ubuntu-1804-server:~# locale LANG=en_US.UTF-8 LANGUAGE= LC_CTYPE="en_US.UTF-8" LC_NUMERIC="en_US.UTF-8" LC_TIME="en_US.UTF-8" LC_COLLATE="en_US.UTF-8" LC_MONETARY="en_US.UTF-8" LC_MESSAGES="en_US.UTF-8" LC_PAPER="en_US.UTF-8" LC_NAME="en_US.UTF-8" LC_ADDRESS="en_US.UTF-8" LC_TELEPHONE="en_US.UTF-8" LC_MEASUREMENT="en_US.UTF-8" LC_IDENTIFICATION="en_US.UTF-8" LC_ALL= 언어 변경하기 사용할 언어를 먼저 설치합니다. 한국어를 사용하고 싶다면 다음과 같이 명령합니다. apt-get install language-pack-ko /etc/default/locale을 열고 다음과 같이 만듭니다. LANG=ko_KR.UTF-8 Ubuntu Server 16.04라면 다음과 같이 만듭니다. # File generated by update-locale LANG="ko_KR.UTF-8" LANGUAGE="ko_KR:ko" 테스트하기 새로 로그인하거나 재부팅하면 변경한 언어가 적용됩니다. 의미 없는 문자열을 입력해보거나... root@ubuntu-1804-server:~# 123 123: 명령을 찾을 수 없습니다 locale ...

Ubuntu 14.04 / LESS 설치하는 방법

Ubuntu 14.04 / LESS 설치하는 방법

우분투 14.04에 LESS를 설치하는 방법을 메모합니다. Node.js 설치 apt-get install nodejs NPM 설치 apt-get install npm LESS 설치 npm install -g less less-plugin-clean-css /usr/local/bin/lessc 파일 첫 줄에 다음과 같은 코드가 있습니다. #!/usr/bin/env node 다음처럼 바꿉니다. #!/usr/bin/env nodejs

Ubuntu Server / Let’s Encrypt 무료 SSL 인증서 발급 받기

Ubuntu Server / Let’s Encrypt 무료 SSL 인증서 발급 받기

Ubuntu Server에서 Apache Web Server를 사용하는 경우 Let’s Encrypt 인증서 발급 받는 방법입니다. Apache용 Certbot 설치 Ubuntu Server 18.04, Ubuntu Server 20.04 apt install software-properties-common add-apt-repository universe add-apt-repository ppa:certbot/certbot apt update apt upgrade apt install certbot python3-certbot-apache Ubuntu Server 16.04 add-apt-repository ppa:certbot/certbot apt update apt upgrade apt install python-certbot-apache 인증서 발급 abc.com 인증서 발급하고 설정 파일 생성 certbot --apache -d abc.com abc.com과 www.abc.com 인증서 동시 발급하고 설정 ...

Ubuntu Server / 원격 데스크톱으로 연결하는 방법

Ubuntu Server / 원격 데스크톱으로 연결하는 방법

리눅스는 보통 SSH로 접속하여 명령어로 작업을 한다. 뭔가 전문가 같고 어려운 일을 하는 거 같다. 그런데, 불편하다. 어떤 작업은 명령어가 편하지만 GUI가 훨씬 편한 것도 있다. 게다가 컴퓨터 사양도 좋아져서 GUI 설치하는 게 부담스럽지도 않다. 그래서 요즘엔 GUI로 작업할 수 있게 세팅을 해두는 편이다. 그래야 누굴 시키기도 편하고... 세팅은 간단하다. 우분투 서버에 ...

Ubuntu 18.04 / 메모

Ubuntu 18.04 / 메모

SSH 설정 설정 파일 /etc/ssh/sshd_config 포트 변경하기 다음 코드를 #Port 22 다음처럼 바꾼다. Port 1234 포트 번호는 자신이 원하는 것으로... root 계정 로그인 가능하게 만들기 다음 코드를 #PermitRootLogin prohibit-password 다음처럼 만든다. PermitRootLogin yes 설정 변경 적용하기 service ssh restart

Ubuntu Server / 고정 IP 설정하는 방법

Ubuntu Server / 고정 IP 설정하는 방법

Ubuntu Server 20.04, Ubuntu Server 18.04 네트워크 설정 파일은 /etc/netplan 디렉토리 안에 있는 yaml 파일입니다. DHCP로 설치했다면, 설정 파일 내용은 다음과 비슷하게 되어 있습니다. # This is the network config written by 'subiquity' network: ethernets: enp0s3: dhcp4: true version: 2 다음과 같이 수정하고 저장합니다. IP ...

Ubuntu / 설치 USB 만드는 방법

Ubuntu / 설치 USB 만드는 방법

ODD가 없는 컴퓨터에 OS를 설치하는 방법은 두가지입니다. 첫번째는 휴대용 ODD를 이용하는 것이고, 두번째는 USB에 설치 파일을 넣어서 이용하는 것입니다. 두번째 방법이 간편하기는 하지만 설치용 USB를 만드는 게 좀 번거롭습니다. 하지만, 우분투(Ubuntu) 설치용 USB는 몇 번의 클릭으로 쉽게 만들 수 있습니다. 우분투 다운로드 원하는 우분투 버전을 다운로드 받습니다. Universal USB Installer 다운로드 다음의 링크에서 Universal USB Installer를 다운로드 ...

Ubuntu 16.04 / ZIP, RAR 압축 파일 푸는 방법

Ubuntu 16.04 / ZIP, RAR 압축 파일 푸는 방법

서버로 큰 용량의 파일을 전송할 때 압축해서 업로드하는 경우가 많습니다. 용량이 줄어드는 효과도 있지만, 여러 파일을 개별적으로 전송하는 것보다 하나의 압축 파일을 전송하고 압축을 푸는 게 더 시간이 짧게 걸리기 때문입니다. 우분투(Ubuntu)에서 ZIP 파일을 압축 해제하려면 unzip을 설치하고, RAR 파일을 압축 해제하려면 unrar를 설치하면 됩니다. 설치는 다음과 같이 합니다. apt-get install unzip ...

Ubuntu Desktop / 설치하기

Ubuntu Desktop / 설치하기

다음은 Ubuntu 20.04 Desktop을 설치하는 과정입니다. Windows를 설치하는 것만큼 쉽고, 시간도 오래 걸리지 않습니다. Ubuntu Desktop을 다운로드하고 설치용 CD 또는 USB를 만듭니다. Rufus를 사용하면 편합니다. 컴퓨터에 설치용 미디어를 장착하고 부팅합니다. 잠시 기다리면... GUI로 설치를 시작합니다. 언어를 한국어로 정하고 를 클릭합니다. 키보드 레이아웃을 정하고 를 클릭합니다. 일반 설치와 최소 설치 중 하나를 선택합니다. 최소 설치를 하고 나중에 ...