Ngix

Adobe Commerce은 nginx 1.x(또는 최신 메인라인 버전)를 지원합니다. 최신 버전의 php-fpm도 설치해야 합니다.

설치 지침은 사용 중인 운영 체제에 따라 다릅니다. 자세한 내용은 PHP을 참조하세요.

우분투

다음 섹션에서는 nginx, PHP 및 MySQL을 사용하여 Ubuntu에 Adobe Commerce 2.x를 설치하는 방법에 대해 설명합니다.

nginx 설치

sudo apt -y install nginx

소스에서 nginx를 빌드할 수도 있습니다.

다음 섹션을 완료하고 응용 프로그램을 설치한 후 샘플 구성 파일을 사용하여 nginx를 구성합니다.

php-fpm 설치 및 구성

Adobe Commerce이 제대로 작동하려면 여러 PHP 확장이 필요합니다. nginx를 사용하는 경우 이러한 확장 외에도 php-fpm 확장 프로그램을 설치하고 구성해야 합니다.

php-fpm을(를) 설치하고 구성하려면:

  1. php-fpmphp-cli 설치:

    code language-bash
    apt-get -y install php7.2-fpm php7.2-cli
    
    note note
    NOTE
    이 명령은 사용 가능한 최신 버전의 PHP 7.2.X를 설치합니다. 지원되는 PHP 버전은 시스템 요구 사항을 참조하십시오.
  2. 편집기에서 php.ini 파일을 엽니다.

    code language-bash
    vim /etc/php/7.2/fpm/php.ini
    
    code language-bash
    vim /etc/php/7.2/cli/php.ini
    
  3. 다음 라인과 일치하도록 두 파일을 편집합니다.

    code language-conf
    memory_limit = 2G
    max_execution_time = 1800
    zlib.output_compression = On
    
    note note
    NOTE
    Adobe Commerce을 테스트할 때 메모리 제한을 2G로 설정하는 것이 좋습니다. 자세한 내용은 필수 PHP 설정을 참조하세요.
  4. 저장하고 편집기를 종료합니다.

  5. php-fpm 서비스 다시 시작:

    code language-bash
    systemctl restart php7.2-fpm
    

MySQL 설치 및 구성

자세한 내용은 MySQL을 참조하세요.

설치 및 구성

Adobe Commerce을 다운로드하는 방법에는 다음을 포함하여 몇 가지가 있습니다.

이 예에서는 명령줄을 사용한 작성기 기반 설치를 보여 줍니다.

  1. 파일 시스템 소유자(으)로 응용 프로그램 서버에 로그인합니다.

  2. 웹 서버 docroot 디렉토리 또는 가상 호스트 docroot로 구성한 디렉토리로 변경합니다. 이 예제에서는 Ubuntu 기본 /var/www/html을(를) 사용합니다.

    code language-bash
    cd /var/www/html
    
  3. Composer를 전체적으로 설치합니다. Composer는 Adobe Commerce을 설치하기 전에 종속성을 업데이트해야 합니다.

    code language-bash
    curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/bin --filename=composer
    
  4. Adobe Commerce 메타패키지를 사용하여 작성기 프로젝트를 만듭니다.

    Magento Open Source

    code language-bash
    composer create-project --repository=https://repo.magento.com/ magento/project-community-edition <install-directory-name>
    

    Adobe Commerce

    code language-bash
    composer create-project --repository=https://repo.magento.com/ magento/project-enterprise-edition <install-directory-name>
    

    메시지가 표시되면 인증 키를 입력하십시오. 공개 키 ​은(는) 사용자 이름이고 개인 키 ​은(는) 암호입니다.

  5. 응용 프로그램을 설치하기 전에 웹 서버 그룹에 대한 읽기/쓰기 권한을 설정합니다. 명령줄이 파일 시스템에 파일을 쓸 수 있도록 해야 합니다.

    code language-bash
    cd /var/www/html/<magento install directory>
    
    code language-bash
    find var generated vendor pub/static pub/media app/etc -type f -exec chmod g+w {} +
    
    code language-bash
    find var generated vendor pub/static pub/media app/etc -type d -exec chmod g+ws {} +
    
    code language-bash
    chown -R :www-data . # Ubuntu
    
    code language-bash
    chmod u+x bin/magento
    
  6. 명령줄에서 설치합니다. 이 예제에서는 설치 디렉터리 이름이 magento2ee이고 db-host이(가) 같은 컴퓨터(localhost)에 있으며 db-name, db-userdb-password이(가) 모두 magento이라고 가정합니다.

    code language-bash
    bin/magento setup:install \
    --base-url=http://localhost/magento2ee \
    --db-host=localhost \
    --db-name=magento \
    --db-user=magento \
    --db-password=magento \
    --backend-frontname=admin \
    --admin-firstname=admin \
    --admin-lastname=admin \
    --admin-email=admin@admin.com \
    --admin-user=admin \
    --admin-password=admin123 \
    --language=en_US \
    --currency=USD \
    --timezone=America/Chicago \
    --use-rewrites=1 \
    --search-engine=elasticsearch7 \
    --elasticsearch-host=es-host.example.com \
    --elasticsearch-port=9200
    
  7. 개발자 모드로 전환:

    code language-bash
    cd /var/www/html/magento2/bin
    
    code language-bash
    ./magento deploy:mode:set developer
    

nginx 구성

설치 디렉터리 및 nginx 가상 호스트에 제공된 nginx.conf.sample 구성 파일을 사용하여 nginx를 구성하는 것이 좋습니다.

이 지침은 nginx 가상 호스트(예: /etc/nginx/sites-available)에 대해 Ubuntu 기본 위치를 사용하고 있고 Ubuntu 기본 docroot(예: /var/www/html)도 사용하고 있다고 가정하지만, 사용자 환경에 맞게 이러한 위치를 변경할 수 있습니다.

  1. 사이트에 대한 새 가상 호스트를 만듭니다.

    code language-bash
    vim /etc/nginx/sites-available/magento
    
  2. 다음 구성을 추가합니다.

    code language-conf
    upstream fastcgi_backend {
      server  unix:/run/php/php7.2-fpm.sock;
    }
    
    server {
    
      listen 80;
      server_name www.magento-dev.com;
      set $MAGE_ROOT /var/www/html/magento2;
      include /var/www/html/magento2/nginx.conf.sample;
    }
    
    note note
    NOTE
    include 지시문은 설치 디렉터리의 샘플 nginx 구성 파일을 가리켜야 합니다.
  3. www.magento-dev.com을(를) 도메인 이름으로 바꾸십시오. 이 URL은 Adobe Commerce 설치 시 지정한 기본 URL과 일치해야 합니다.

  4. 저장하고 편집기를 종료합니다.

  5. /etc/nginx/sites-enabled 디렉터리에 symlink를 만들어 새로 만든 가상 호스트를 활성화합니다.

    code language-bash
    ln -s /etc/nginx/sites-available/magento /etc/nginx/sites-enabled
    
  6. 구문이 올바른지 확인합니다.

    code language-bash
    nginx -t
    
  7. nginx 다시 시작:

    code language-bash
    systemctl restart nginx
    

설치 확인

웹 브라우저를 열고 사이트의 기본 URL로 이동하여 설치를 확인합니다.

센트OS 7

다음 섹션에서는 nginx, PHP 및 MySQL을 사용하여 CentOS 7에 Adobe Commerce 2.x를 설치하는 방법을 설명합니다.

nginx 설치

yum -y install epel-release
yum -y install nginx

설치가 완료되면 ngix를 시작하고 부팅 시 시작되도록 구성합니다.

systemctl start nginx
systemctl enable nginx

다음 섹션을 완료하고 애플리케이션을 설치한 후 샘플 구성 파일을 사용하여 nginx를 구성하겠습니다.

php-fpm 설치 및 구성

Adobe Commerce이 제대로 작동하려면 여러 PHP 확장이 필요합니다. nginx를 사용하는 경우 이러한 확장 외에도 php-fpm 확장 프로그램을 설치하고 구성해야 합니다.

  1. php-fpm 설치:

    code language-bash
    yum -y install php70w-fpm
    
  2. 편집기에서 /etc/php.ini 파일을 엽니다.

  3. cgi.fix_pathinfo 줄의 주석 처리를 제거하고 값을 0(으)로 변경합니다.

  4. 다음 행과 일치하도록 파일을 편집합니다.

    code language-conf
    memory_limit = 2G
    max_execution_time = 1800
    zlib.output_compression = On
    
    note note
    NOTE
    Adobe Commerce을 테스트할 때 메모리 제한을 2G로 설정하는 것이 좋습니다. 자세한 내용은 필수 PHP 설정을 참조하세요.
  5. 세션 경로 디렉토리의 주석 처리를 제거하고 경로를 설정합니다.

    code language-conf
    session.save_path = "/var/lib/php/session"
    
  6. 저장하고 편집기를 종료합니다.

  7. 편집기에서 /etc/php-fpm.d/www.conf 열기

  8. 다음 행과 일치하도록 파일을 편집합니다.

    code language-conf
    user = nginx
    group = nginx
    listen = /run/php-fpm/php-fpm.sock
    listen.owner = nginx
    listen.group = nginx
    listen.mode = 0660
    
  9. 환경 라인의 주석 처리를 제거합니다.

    code language-conf
    env[HOSTNAME] = $HOSTNAME
    env[PATH] = /usr/local/bin:/usr/bin:/bin
    env[TMP] = /tmp
    env[TMPDIR] = /tmp
    env[TEMP] = /tmp
    
  10. 저장하고 편집기를 종료합니다.

  11. PHP 세션 경로에 대한 디렉터리를 만들고 소유자를 apache 사용자 및 그룹으로 변경합니다.

    code language-bash
    mkdir -p /var/lib/php/session/
    
    code language-bash
    chown -R apache:apache /var/lib/php/
    
  12. PHP 세션 경로에 대한 디렉터리를 만들고 소유자를 apache 사용자 및 그룹으로 변경합니다.

    code language-bash
    mkdir -p /run/php-fpm/
    
    code language-bash
    chown -R apache:apache /run/php-fpm/
    
  13. php-fpm 서비스를 시작하고 부팅 시 시작되도록 구성하십시오.

    code language-bash
    systemctl start php-fpm
    
    code language-bash
    systemctl enable php-fpm
    
  14. php-fpm 서비스가 실행 중인지 확인합니다.

    code language-bash
    netstat -pl | grep php-fpm.sock
    

MySQL 설치 및 구성

자세한 내용은 MySQL을 참조하세요.

설치 및 구성

Adobe Commerce을 다운로드하는 방법에는 다음을 포함하여 몇 가지가 있습니다.

이 예에서는 명령줄을 사용한 작성기 기반 설치를 보여 줍니다.

  1. 파일 시스템 소유자(으)로 응용 프로그램 서버에 로그인합니다.

  2. 웹 서버 docroot 디렉토리 또는 가상 호스트 docroot로 구성한 디렉토리로 변경합니다. 이 예제에서는 Ubuntu 기본 /var/www/html을(를) 사용합니다.

    code language-bash
    cd /var/www/html
    
  3. Composer를 전체적으로 설치합니다. Composer는 Adobe Commerce을 설치하기 전에 종속성을 업데이트해야 합니다.

    code language-bash
    curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/bin --filename=composer
    
  4. Adobe Commerce 메타패키지를 사용하여 작성기 프로젝트를 만듭니다.

    Magento Open Source

    code language-bash
    composer create-project --repository=https://repo.magento.com/ magento/project-community-edition <install-directory-name>
    

    Adobe Commerce

    code language-bash
    composer create-project --repository=https://repo.magento.com/ magento/project-enterprise-edition <install-directory-name>
    

    메시지가 표시되면 인증 키를 입력하십시오. 공개 키 ​은(는) 사용자 이름이고 개인 키 ​은(는) 암호입니다.

  5. 응용 프로그램을 설치하기 전에 웹 서버 그룹에 대한 읽기/쓰기 권한을 설정합니다. 명령줄이 파일 시스템에 파일을 쓸 수 있도록 해야 합니다.

    code language-bash
    cd /var/www/html/<magento install directory>
    
    code language-bash
    find var generated vendor pub/static pub/media app/etc -type f -exec chmod g+w {} +
    
    code language-bash
    find var generated vendor pub/static pub/media app/etc -type d -exec chmod g+ws {} +
    
    code language-bash
    chown -R :www-data . # Ubuntu
    
    code language-bash
    chmod u+x bin/magento
    
  6. 명령줄에서 설치합니다. 이 예제에서는 설치 디렉터리 이름이 magento2ee이고 db-host이(가) 같은 컴퓨터(localhost)에 있으며 db-name, db-userdb-password이(가) 모두 magento이라고 가정합니다.

    code language-bash
    bin/magento setup:install \
    --base-url=http://localhost/magento2ee \
    --db-host=localhost \
    --db-name=magento \
    --db-user=magento \
    --db-password=magento \
    --backend-frontname=admin \
    --admin-firstname=admin \
    --admin-lastname=admin \
    --admin-email=admin@admin.com \
    --admin-user=admin \
    --admin-password=admin123 \
    --language=en_US \
    --currency=USD \
    --timezone=America/Chicago \
    --use-rewrites=1
    
  7. 개발자 모드로 전환:

    code language-bash
    cd /var/www/html/magento2/bin
    
    code language-bash
    ./magento deploy:mode:set developer
    

nginx 구성

설치 디렉터리 및 nginx 가상 호스트에 제공된 nginx.conf.sample 구성 파일을 사용하여 nginx를 구성하는 것이 좋습니다.

이러한 지침에서는 nginx 가상 호스트(예: /etc/nginx/conf.d)와 기본 docroot(예: /usr/share/nginx/html)에 대해 CentOS 기본 위치를 사용하고 있다고 가정하지만 환경에 맞게 이러한 위치를 변경할 수 있습니다.

  1. 사이트에 대한 새 가상 호스트를 만듭니다.

    code language-bash
    vim /etc/nginx/conf.d/magento.conf
    
  2. 다음 구성을 추가합니다.

    code language-conf
    upstream fastcgi_backend {
      server  unix:/run/php-fpm/php-fpm.sock;
    }
    
    server {
    
      listen 80;
      server_name www.magento-dev.com;
      set $MAGE_ROOT /usr/share/nginx/html/magento2;
      include /usr/share/nginx/html/magento2/nginx.conf.sample;
    }
    
    note note
    NOTE
    include 지시문은 설치 디렉터리의 샘플 nginx 구성 파일을 가리켜야 합니다.
  3. www.magento-dev.com을(를) 도메인 이름으로 바꾸십시오.

  4. 저장하고 편집기를 종료합니다.

  5. 구문이 올바른지 확인합니다.

    code language-bash
    nginx -t
    
  6. nginx 다시 시작:

    code language-bash
    systemctl restart nginx
    

SELinux 및 Firewalld 구성

SELinux는 CentOS 7에서 기본적으로 활성화됩니다. 다음 명령을 사용하여 실행 중인지 확인하십시오.

sestatus

SELinux 및 firewall을 구성하려면 다음을 수행합니다.

  1. SELinux 관리 도구를 설치합니다.

    code language-bash
    yum -y install policycoreutils-python
    
  2. 다음 명령을 실행하여 설치 디렉토리의 보안 컨텍스트를 변경합니다.

    code language-bash
    semanage fcontext -a -t httpd_sys_rw_content_t '/usr/share/nginx/html/magento2/app/etc(/.*)?'
    
    code language-bash
    semanage fcontext -a -t httpd_sys_rw_content_t '/usr/share/nginx/html/magento2/var(/.*)?'
    
    code language-bash
    semanage fcontext -a -t httpd_sys_rw_content_t '/usr/share/nginx/html/magento2/pub/media(/.*)?'
    
    code language-bash
    semanage fcontext -a -t httpd_sys_rw_content_t '/usr/share/nginx/html/magento2/pub/static(/.*)?'
    
    code language-bash
    restorecon -Rv '/usr/share/nginx/html/magento2/'
    
  3. Firewalld 패키지를 설치합니다.

    code language-bash
    yum -y install firewalld
    
  4. 방화벽 서비스를 시작하고 부팅 시 시작되도록 구성합니다.

    code language-bash
    systemctl start firewalld
    
    code language-bash
    systemctl enable firewalld
    
  5. 웹 브라우저에서 기본 URL에 액세스할 수 있도록 다음 명령을 실행하여 HTTP 및 HTTPS용 포트를 엽니다.

    code language-bash
    firewall-cmd --permanent --add-service=http
    
    code language-bash
    firewall-cmd --permanent --add-service=https
    
    code language-bash
    firewall-cmd --reload
    

설치 확인

웹 브라우저를 열고 사이트의 기본 URL로 이동하여 설치를 확인합니다.

recommendation-more-help
0f8e7db5-0e9c-4002-a5b8-a0088077d995