웹사이트 검색

Ubuntu 15.10에서 Nginx 및 SSL을 사용하여 OpenCart 2를 설치하는 방법


이 페이지에서

  1. 1단계 - Nginx 설치
  2. 2단계 - PHP-FPM 설치 및 구성
  3. 3단계 - MariaDB 설치 및 구성
  4. 4단계 - SSL 설치
  5. 5단계 - OpenCart용 VirtualHost 구성
  6. 6단계 - OpenCart 설치 및 구성
  7. 결론

OpenCart는 PHP 및 MySQL을 기반으로 하는 무료 오픈 소스 전자 상거래 소프트웨어입니다. OpenCart를 사용하면 최소한의 비용으로 온라인 상점을 설정하고 운영할 수 있습니다. 이 소프트웨어는 중소 온라인 비즈니스에 적합하며 설치가 쉽고 많은 추가 기능과 확장 기능을 사용할 수 있습니다. OpenCart는 다양한 언어로 번역되어 제공되며 여러 통화를 지원합니다.

이 가이드에서는 Ubuntu 15.10에서 Nginx, PHP-fpm 및 MariaDB를 사용하여 OpenCart를 설치하는 방법을 다룹니다.

전제 조건

  • 우분투 15.10 - 64비트
  • 루트 권한\n

1단계 - Nginx 설치

우리는 nginx를 웹 서버로 사용할 것입니다. nginx는 빠르고 메모리 사용량이 적은 경량 웹 서버입니다. Ubuntu 리포지토리에서 apt 명령을 사용하여 nginx를 설치합니다.

sudo apt-get install nginx

이제 curl을 사용하거나 firefox 등과 같은 브라우저로 서버 IP를 방문하여 Nginx를 확인하십시오.

curl -I 192.168.1.101

Ubuntu 기본 페이지가 표시되어야 합니다.

2단계 - PHP-FPM 설치 및 구성

이 단계에서는 php-fpm 버전으로 설치합니다. php-fpm(FastCGI Process Manager)은 고전적인 PHP FastCGI 모드의 최신 대안입니다. OpenCart에 필요한 일부 PHP 모듈과 함께 php-fpm을 설치합니다.

  • php-mysql
  • php-gd
  • php-컬
  • php-mcrypt

아래의 단일 apt 명령으로 PHP-FPM 및 PHP 확장을 설치하십시오.

sudo apt-get install php5 php5-fpm php5-mysql php5-curl php5-gd php5-mcrypt

패키지가 설치되면 php-fpm 구성 디렉토리로 이동하여 vim으로 php.ini 파일을 편집합니다.

cd /etc/php5/fpm
vim php.ini

773행의 주석을 제거하고 값을 0으로 변경하십시오.

cgi.fix_pathinfo=0

파일을 저장하고 종료합니다.

이제 OpenCart에 필요한 mcrypt 모듈을 활성화해야 합니다. php-fpm conf.d 디렉토리로 이동하여 .ini 파일에 대한 심볼릭 링크를 만듭니다.

cd /etc/php5/fpm/conf.d/
ln -s ../../mods-available/mcrypt.ini mcrypt.ini

mcrypt 모듈이 활성화되었습니다. 이제 php-fpm 및 nginx를 다시 시작하여 변경 사항을 적용하십시오.

systemctl restart nginx
systemctl restart php5-fpm

이제 php-fpm과 Nginx가 올바르게 작동하는지 확인해야 합니다. nginx virtualhost 구성의 기본값을 편집하여 php 위치를 활성화하고 웹 루트 디렉터리에 phpinfo 파일을 만듭니다.

cd /etc/nginx/sites-available/
vim default

php-fpm 지시문의 주석 처리를 제거하십시오.

        location ~ \.php$ {
                include snippets/fastcgi-php.conf;
        #
        #       # With php5-cgi alone:
        #       fastcgi_pass 127.0.0.1:9000;
        #       # With php5-fpm:
                fastcgi_pass unix:/var/run/php5-fpm.sock;
        }

파일을 저장하고 종료합니다.

/var/www/html/ 디렉토리로 이동하여 phpinfo 파일을 추가합니다.

cd /var/www/html/
echo "<?php phpinfo(); ?>" > info.php

서버 IP를 방문하십시오(제 경우에는 IP 192.168.1.103): http://

Nginx 및 PHP-FPM이 올바르게 구성되었습니다.

3단계 - MariaDB 설치 및 구성

MariaDB는 MySQL 데이터베이스 서버의 포크입니다. 저는 MySQL보다 MariaDB를 선호하지만 이 단계에서 사용할 데이터베이스 서버는 사용자에게 달려 있습니다. apt 명령으로 MariaDB를 설치합니다.

sudo apt-get install mariadb-server mariadb-client

그런 다음 mysql_secure_installation 명령을 사용하여 MariaDB/MySQL 루트 암호를 구성합니다.

mysql_secure_installation
Set root password? [Y/n] Y
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

MariaDB 루트 사용자 및 비밀번호가 설정되었습니다. 이제 OpenCart 설치를 위한 새 데이터베이스와 사용자를 만들어야 합니다. mysql/mariadb 셸에 로그인하여 모두 생성합니다.

MySQL/MariaDB 셸에 로그인하여 데이터베이스와 사용자를 생성합니다.

mysql -u root -p
TYPE YOUR PASSWORD

create database opencartdb;
create user ';
flush privileges;

MySQL 데이터베이스가 생성되고 opencartdb라는 새 데이터베이스와 이름이 opencartuser이고 비밀번호가 [email 인 사용자가 있습니다. 나중에 OpenCart 설치를 위해 이러한 세부 정보를 알아야 합니다. 설치 시 더 안전한 비밀번호를 사용하십시오.

4단계 - SSL 설치

OpenSSL이 서버에 설치되어 있는지 확인하십시오.

sudo apt-get install openssl

SSL 인증서를 위한 새 디렉터리를 생성하고 OpenSSL을 사용하여 인증서를 생성합니다.

mkdir -p /etc/nginx/ssl
cd /etc/nginx/ssl

인증서 및 키 파일을 생성합니다.

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/nginx/ssl/opencart.key -out /etc/nginx/ssl/opencart.crt

개인 키의 권한을 600으로 변경합니다.

chmod 600 opencart.key

SSL 인증서 설치가 완료되었습니다.

5단계 - OpenCart용 VirtualHost 구성

Nginx 사이트 사용 가능 디렉토리에 OpenCart용 새 가상 호스트 구성 파일을 만듭니다. Nginx 가상 호스트 디렉터리로 이동하고 vim으로 새 구성을 만듭니다.

cd /etc/nginx/sites-available/
vim opencart

아래 구성을 붙여넣습니다.

server {
    server_name www.myopencart.co; ## Your Domain
    root /var/www/opencart/upload; ## Web Root Directory
    index index.php index.html;

    listen 80;
    listen [::]:80;
    listen 443 default ssl;

    ssl_certificate      /etc/nginx/ssl/opencart.crt;
    ssl_certificate_key  /etc/nginx/ssl/opencart.key;

    # Redirect HTTP to HTTPS
    if ($scheme = http) {
        return 301 https://$server_name$request_uri;
    }

    access_log /var/log/nginx/myopencart_access.log;               

    location /image/data {
        autoindex on;
    }
    location /admin {
        index index.php;
    }
    location / {
        try_files $uri @opencart;
    }
    location @opencart {
        rewrite ^/(.+)$ /index.php?_route_=$1 last;
    }
    
    # Make sure files with the following extensions do not get loaded by nginx because nginx would display the source code, and these files can contain PASSWORDS!
    location ~* \.(engine|inc|info|install|make|module|profile|test|po|sh|.*sql|theme|tpl(\.php)?|xtmpl)$|^(\..*|Entries.*|Repository|Root|Tag|Template)$|\.php_ {
        deny all;
    }
    # Deny all attempts to access hidden files such as .htaccess, .htpasswd, .DS_Store (Mac).
    location ~ /\. {
        deny all;
        access_log off;
        log_not_found off;
    }
    location ~*  \.(jpg|jpeg|png|gif|css|js|ico)$ {
        expires max;
        log_not_found off;
    }
    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_pass unix:/var/run/php5-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

server_name 줄의 도메인 이름을 자신의 도메인 이름으로 바꿉니다.

파일을 저장하고 종료합니다.

사이트 활성화 디렉토리의 opencart 파일에 대한 symlink로 새 가상 호스트를 활성화하고 "nginx -t" 명령으로 Nginx 구성 구문을 확인합니다.

ln -s /etc/nginx/sites-available/opencart /etc/nginx/sites-enabled/
nginx -t

6단계 - OpenCart 설치 및 구성

OpenCart 설치를 위해 /var/www/ 디렉토리를 사용합니다. /var/www/ 디렉토리로 이동하여 OpenCart를 다운로드하고 다운로드한 .zip 아카이브의 압축을 풉니다.

http://www.opencart.com/?route=download/download에서 opencart를 다운로드할 수 있습니다.

cd /var/www/
unzip opencart-2.1.0.1.zip

디렉터리 이름을 opencart로 바꾼 다음 업로드 디렉터리로 이동합니다.

mv opencart-opencart-2.1.0.1/ opencart/
cd opencart/upload/

업로드 및 관리 디렉터리에 config-dist 파일을 복사합니다.

cp config-dist.php config.php
cp admin/config-dist.php admin/config.php

그리고 /var/www/ 디렉토리로 돌아가서 OpenCart 파일과 디렉토리의 소유자를 www-data 사용자로 변경합니다.

cd /var/www/
chown -R www-data:www-data opencart/

참고 : www-data 사용자 및 그룹으로 nginx를 실행합니다. 자신의 사용자 또는 사용자 Nginx로 nginx를 실행하는 경우 소유자를 자신의 이름과 그룹으로 변경합니다.

설정한 구성에 오류가 없는지 확인하려면 nginx 및 php-fpm을 다시 시작하십시오.

systemctl restart nginx
systemctl restart php5-fpm

이제 웹 브라우저를 열고 주소 표시줄에 opencart 도메인을 입력합니다. 이 예에서 제 도메인 이름은 www.myopencart.co입니다.

설치 프로그램이 "사용권 계약"을 표시하고 이를 읽고 "계속"을 클릭합니다.

이제 설치 프로그램이 서버 설정을 확인하고 모든 상태 필드가 "녹색"인지 확인한 다음 "계속"을 클릭합니다.

설치 프로그램에 데이터베이스 및 관리자 계정 구성이 표시됩니다. 이전에 생성한 데이터베이스의 데이터베이스 세부 정보를 입력하고 관리자 사용자 이름과 암호를 선택한 다음 "계속"을 클릭합니다.

OpenCart 설치가 완료되었습니다. 웹 상점 도메인(제 경우에는 www.myopencart.co)을 방문하여 OpenCart 백엔드에 로그인할 수 있습니다.

서버에서 설치 디렉토리를 삭제하는 것을 잊지 마십시오.

cd /var/www/opencart/upload/
rm -rf install/

Nginx 및 php-fpm이 포함된 Opencart가 설치되어 작동 중입니다.

결론

Opencart는 온라인 상점을 구축하기 위해 PHP로 작성된 웹 기반 애플리케이션입니다. 중소 규모의 온라인 상점에 적합합니다. Opencart는 Apache 또는 Nginx(php-fpm 포함) 웹 서버와 함께 설치할 수 있습니다. 이 튜토리얼에서는 nginx, php-fpm 및 MariaDB(MySQL 포크) 데이터베이스를 사용한 OpenCart 설치에 대해 설명했습니다. 설치 과정은 쉽습니다. 이 튜토리얼의 첫 번째 장에서 했던 것처럼 서버가 OpenCart를 사용할 준비가 되었는지 확인하기만 하면 됩니다.