Ubuntu 18.04 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 20.04 Server / Samba / 설치하고 공유 폴더 만드는 방법

Ubuntu 20.04 Server / Samba / 설치하고 공유 폴더 만드는 방법

Samba를 이용하여 Ubuntu Server에 공유 폴더를 만들고, Windows 클라이언트에서 접속하는 방법을 알아본다. Samba 설치 Samba를 설치한다. 설치하면 바로 시작하고, 재부팅을 해도 자동으로 시작한다. apt install samba 공유할 폴더를 만들고 권한을 777로 설정한다. mkdir /sharedfolder chmod 777 /sharedfolder 설정 파일은 /etc/samba/smb.conf이다. 텍스트 에디터로 열고 제일 밑에 다음 코드를 추가한다. 폴더 이름은 sharedfolder이지만, 네트워크에서는 Shared Folder로 보인다. comment = ...

Ubuntu Server 22.04 / 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 방화벽을 사용 중이라면 다음과 같이 명령하여 포트를 ...

Ubuntu 16.04 / phpMyAdmin / 특정 IP에서만 접속 가능하게 만드는 방법

우분투 16.04에서 phpMyAdmin을 패키지로 설치했을 때, 기본 설정은 모든 IP에서 접속 가능입니다. 만약 특정 IP에서만 접속 가능하게 하려면 /etc/apache2/conf-available/phpmyadmin.conf에 다음 코드를 추가합니다. <Directory /usr/share/phpmyadmin> Order deny,allow Deny from all Allow from xxx.xxx.xxx.xxx </Directory> xxx.xxx.xxx.xxx는 접속하려는 IP로 바꿉니다. 여러 IP를 설정하고 싶을 때는 띄어쓰기로 구분합니다. <Directory /usr/share/phpmyadmin> Order deny,allow Deny from all ...

Ubuntu 24.04 Server / root 계정으로 로그인할 수 있게, ssh 접속할 수 있게 설정하는 방법

Ubuntu는 설치할 때 일반 사용자 계정만 만들고, 관리자 권한이 필요할 때는 sudo를 이용한다. 만약 보안에 문제가 없는 경우라면 root 계정으로 로그인하는 게 작업하는 게 편하다. root 계정으로 로그인할 수 있게 설정하는 방법 일반 사용자 계정으로 로그인한다. 다음과 같이 명령하여 root 계정의 비밀번호를 만들면 root 계정으로 로그인할 수 있다. # sudo passwd root root 계정으로 ssh ...

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

Ubuntu 18.04 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를 설치하면 부팅 시 자동으로 시작하게 설정됩니다. 만약 자동 ...

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

Ubuntu Server에서 Apache Web Server를 사용하는 경우 Let’s Encrypt 인증서 발급 받는 방법입니다. Apache용 Certbot 설치 Ubuntu Server 20.04, Ubuntu Server 22.04 # snap install core # snap refresh core # snap install --classic certbot # ln -s /snap/bin/certbot /usr/bin/certbot Ubuntu Server 18.04 # apt install software-properties-common # add-apt-repository universe # add-apt-repository ppa:certbot/certbot # apt update # apt upgrade # apt install certbot ...

Ubuntu 20.04 / 글꼴 설치하는 방법

Ubuntu 20.04 / 글꼴 설치하는 방법

Ubuntu 20.04 Desktop 설치하려는 글꼴을 더블 클릭하거나, 글꼴 선택 후 엔터키를 누르거나, 마우스 우클릭 후 를 클릭합니다. 상단에 있는 를 클릭합니다. 설치가 완료되면 으로 바뀝니다. 글꼴이 잘 설치되었는지 확인합니다.

Ubuntu 22.04 Server / NGINX / 설치와 설정

Ubuntu 22.04 Server / NGINX / 설치와 설정

Nginx는 높은 성능과 안정성을 제공하는 웹 서버 소프트웨어로, 웹 서버 외에도 리버스 프록시, 로드 밸런서, 메일 프록시 등의 기능을 수행할 수 있다. Igor Sysoev가 2004년에 처음 개발했으며, 현재는 오픈 소스 소프트웨어로 널리 사용되고 있다. 가정 Ubuntu 22.04 Server의 IP는 192.168.3.242이고, 내 컴퓨터에서 IP로 접근 가능하다. 내 컴퓨터의 OS는 Windows이다. 설치 nginx 패키지 설치 다음과 같이 명령하여 ...

Ubuntu 24.04 Server / 설치된 패키지 확인하는 방법

Ubuntu 24.04 Server / 설치된 패키지 확인하는 방법

우분투에서 설치된 패키지 확인은 apt 또는 dpkg 명령어로 할 수 있다. 출력하는 내용에 차이가 있다. apt 명령어로 설치된 패키지 확인 설치된 모든 패키지를 출력한다. # apt list --installed 설치된 패키지 중 이름에 mariadb가 있는 것을 출력한다. # apt list --installed | grep mariadb dpkg 명령어로 설치된 패키지 확인 설치된 모든 패키지를 출력한다. # dpkg -l 설치된 패키지 중 이름에 ...

Ubuntu 22.04 Server / SSH / 포트 변경하는 방법

보안 상의 이유로 SSH 포트는 변경하는 것이 좋다. Ubuntu 22.04 Server에서 SSH 포트 변경하는 방법은 다음과 같다. 1980으로 변경한다고 가정한다. /etc/ssh/sshd_config에서 다음의 코드를... #Port 22 다음으로 변경한다. Port 1980 방화벽이 활성화되어 있다면 1980 포트를 열어준다. ufw allow 1980/tcp SSH 서비스를 다시 시작한다. systemctl restart ssh SSH 서비스를 다시 시작해도 적용되지 않으면, 컴퓨터를 다시 시작한다.