Localhost에 Magento 2를 설치하는 방법

게시 됨: 2021-04-12

목차

2021년 4월 13일 업데이트 : 사용자가 Magento 2.4.2를 설치하려고 할 때 404 Not Found 오류가 발생할 수 있습니다. 최상의 결과를 얻으려면 문서에서 제안된 솔루션을 따르십시오.

Magento가 2.0 버전을 출시한 지 꽤 오래되었습니다. 보다 친숙한 사용자 인터페이스와 향상된 성능으로 인해 많은 기존 Magento 1 사용자가 조만간 Magento 2로 이동할 가능성이 높습니다. 시미카트는 트렌드에 맞춰 2016년 12월 마젠토 2 모바일 앱도 출시했다.

오늘은 XAMPP 서버를 사용하여 Windows에서 로컬로 Magento 2.4를 설치하는 방법을 보여드리겠습니다. 이 튜토리얼은 현재 Magento 2 사용자와 Magento를 처음 접하는 사용자를 대상으로 합니다. 이제 시작하겠습니다!

1부: XAMPP 설치 및 구성

1단계 : XAMPP 다운로드

다운로드 링크: https://www.apachefriends.org/download.html

M2.4용 Magento에서 권장하는 PHP 버전 7.4.x와 함께 XAMPP를 설치하는 것이 좋습니다. 또한 Magento에 따르면 PHP 7.3과 함께 Magento 2.4를 설치할 수 있지만 테스트되거나 권장되지는 않습니다.

2단계 : XAMPP 설치

XAMPP를 다운로드한 후 파일을 두 번 클릭하여 컴퓨터에 설치합니다.

다음 을 클릭합니다.

xampp 설정 1단계

이미지와 같이 기본 선택을 그대로 둡니다. 다음 을 클릭합니다.

xampp 설정 2단계

설치 폴더를 선택하십시오. 기본 위치는 C:\xampp 입니다. 그런 다음 다음 을 클릭합니다.

xampp 설정 3단계

다음 을 클릭합니다.

xampp 설정 4단계

다음 을 클릭합니다.

xampp 설정 5단계

이제 설치 프로그램이 컴퓨터에 xampp를 설치합니다. 잠시만 기다려주세요.

xampp 설정 설치

설정이 완료되면 "지금 제어판을 시작하시겠습니까?" 옵션이 표시됩니다. 선택된 상태로 유지하십시오. 마침 을 클릭하여 설정을 종료하고 XAMPP 제어판으로 들어갑니다.

xampp 설정 완료

3단계 : XAMPP 구성

XAMPP 제어판에서 "Apache" 행의 Config 버튼을 클릭하고 " PHP (php.ini) "를 클릭합니다.

php.ini 구성


php.ini 파일에서 다음 행을 찾아 제거하십시오 ; 각 행 앞에:

 ;확장자=intl
;확장자=비누
;확장자=소켓
;확장자=나트륨
;확장자=xsl

memory_limit 를 4G로 확장:

 memory_limit=4G

완료한 후 파일을 저장하고 닫습니다. 그런 다음 Apache 및 MySQL 2개 행에서 시작 버튼을 클릭하여 시작합니다. 이 단계 후에 XAMPP를 종료하지 말고 그냥 실행하십시오.

4단계 : 호스트 파일 구성

C:\Windows\System32\drivers\etc\hosts 엽니다. 마지막 행에 다음 줄을 추가합니다.

 127.0.0.1 www.localhost.com

5단계 : 데이터베이스 생성

URL http://localhost/phpmyadmin/ 을 탐색하여 phpMyAdmin 페이지에 액세스합니다. 데이터베이스 이름(예: "Magento2")을 입력하고 만들기 를 클릭합니다.

phpmyadmin

나중에 ( root 사용자를 사용하여) Magento를 설치할 수 있으므로 데이터베이스 이름을 기록해 두십시오.

2부: Elasticsearch 설치

버전 2.4부터 Magento를 사용하려면 Elasticsearch가 카탈로그 검색 엔진이 되어야 합니다.

Elasticsearch 7.6.0 다운로드: https://www.elastic.co/downloads/past-releases/elasticsearch-7-6-0 (Magento 2.4.x는 Elasticsearch 7.6.x에서만 테스트되었습니다. 다른 7.x를 사용할 수 있습니다. 재량에 따라 버전을 선택할 수 있지만 테스트된 Elasticsearch 버전을 사용하는 것이 좋습니다.)

방금 다운로드한 .zip 파일의 압축을 풉니다. 터미널 창에서 cd 을 푼 디렉터리로 이동하고 다음 명령을 실행합니다.

 .\bin\elasticsearch.bat

설치가 완료되면 http://localhost:9200 에 Elasticsearch가 제대로 설치되었는지 확인할 수 있습니다. 그러면 다음과 같이 표시됩니다.

 {
   "이름": "Cp8oag6",
   "cluster_name": "elasticsearch",
   "cluster_uuid": "AT69_T_DTp-1qgIJlatQqA",
   "버전" : {
     "숫자": "7.6.0",
     "build_flavor": "기본값",
     "build_type": "tar",
     "build_hash": "f27399d",
     "빌드 날짜": "2016-03-30T09:51:41.449Z",
     "build_snapshot": 거짓,
     "lucene_version": "8.7.0",
     "minimum_wire_compatibility_version": "1.2.3",
     "minimum_index_compatibility_version" : "1.2.3"
   },
   "tagline" : "검색을 위해"
 }

3부: Composer를 사용하여 Magento 다운로드

Magento 2의 일부 플러그인은 작곡가 2.x에서 작동하지 않으므로 안정적인 버전의 작곡가 1.x를 사용하여 Magento를 다운로드하는 것이 좋습니다. 이를 수행하는 가장 좋은 방법은 Composer-Setup.exe를 설치하는 것입니다.

이 설정은 최신 작곡가 버전을 설치하고 PATH 환경 변수를 설정하여 모든 디렉토리에서 작곡가를 편리하게 호출할 수 있도록 합니다. 작곡가 설치를 마친 후에는 최상의 호환성을 보장하기 위해 composer self-update --1 을 사용하여 이전 1.x 버전으로 다운그레이드해야 합니다.

그런 다음 C:\xampp\htdocs cd 이동하고 다음 명령을 실행합니다.

 작곡가 create-project --repository-url=https://repo.magento.com/magento/project-community-edition=2.4.2 <설치 디렉터리 이름>

작곡가가 필요한 모든 모듈을 다운로드하고 설치하는 데 시간이 걸립니다. 모든 작업이 완료되면 다음과 같이 표시됩니다.

작곡가 다운로드 Magento

4부: 명령줄을 사용하여 Magento 설치

Magento 2.4부터 명령줄 인터페이스는 Magento의 기본(유일한) 설치 방법입니다.

Magento 2.4를 설치하는 동안 몇 가지 오류가 발생할 수 있습니다. 이러한 오류를 방지하려면 먼저 Magento 파일을 약간 조정해야 합니다.

이 오류를 방지하려면:

gd2 오류

\vendor\magento\framework\Image\Adapter\Gd2.php 에서 validateURLScheme 함수를 찾아 다음으로 바꿉니다.

 개인 함수 validateURLScheme(문자열 $filename) : bool
   {
       $allowed_schemes = ['ftp', 'ftps', 'http', 'https'];
       $url = parse_url($파일명);
       if ($url && isset($url['scheme']) && !in_array($url['scheme'], $allowed_schemes) && !file_exists($filename)) {
           거짓을 반환합니다.
       }
       true를 반환합니다.
 }

다음으로 cd 디렉터리로 이동하고 다음 명령을 실행합니다.

 PHP bin/magento 설정: 설치 --base-url=http://localhost/magento24/ --db-host=localhost --db-name=yourdbname --db-user=yourdbuser --db-password=yourdbpassword - -admin-firstname=admin --admin-lastname=admin [email protected] --admin-user=admin --admin-password=admin123 --language=en_US --currency=USD -- 시간대=미국/시카고 --use-rewrites=1 --backend-frontname=admin --search-engine=elasticsearch7 --elasticsearch-host=localhost --elasticsearch-port=9200 

설명 :

  • base-url : 다음 형식을 따르는 Magento 디렉토리가 있는 경로: http[s]://<host or ip>/<your Magento install dir>/
  • db-host : 호스트의 호스트 이름 또는 IP 주소
  • db-name : 방금 생성한 Magento 데이터베이스의 이름으로 변경
  • db-user : 모든 권한이 있는 데이터베이스 사용자입니다. 기본 루트 사용자를 사용하겠습니다.
  • db-password : 데이터베이스 사용자의 비밀번호입니다. '루트' 데이터베이스 사용자를 사용하는 경우 비워 둡니다.
  • admin-firstname : 귀하의 이름
  • admin-lastname : 귀하의 성
  • admin-email : 귀하의 이메일 주소
  • admin-user : 관리자 패널에 로그인하는 데 사용할 사용자 이름
  • admin-password : 관리자 패널에 로그인할 때 사용할 비밀번호
  • language : 관리자 패널과 상점에서 사용할 언어입니다. en_US 와 같은 언어 코드를 사용하십시오.
  • admin-email : 이메일로 변경
  • currency : 상점에서 사용할 기본 통화를 설정합니다. 코드와 함께 지원되는 통화 목록을 php bin/magento info:currency:list 를 입력하십시오.
  • timezone : 현재 있는 시간대로 변경합니다. 무엇을 채워야 하는지에 대한 더 나은 아이디어는 지원되는 시간대 목록을 참조하세요.
  • url-rewrites : 웹 서버 재작성을 활성화하려면 1로 설정합니다. 이것은 귀하의 사이트 순위에 도움이 될 것입니다.
  • backend-frontname : 관리자 URL을 설정합니다. 이 매개변수를 생략하면 Magento 관리자 경로에 대한 URL이 무작위로 생성됩니다(예: admin_jkhgdfq).
  • search-engine : 이 Magento 설치에 사용할 Elasticsearch 버전을 설정합니다. 기본값은 Elasticsearch7입니다.
  • elasticsearch-host : Elasticsearch가 실행 중인 호스트 이름 또는 IP 주소입니다. 기본값은 로컬 호스트입니다.
  • elasticsearch-port : Elasticsearch가 수신 대기 중인 포트 번호입니다. 기본값은 9200입니다.

더 많은 구성 가능한 옵션은 Magento의 공식 가이드를 참조하십시오.

성공적으로 설치되면 다음 메시지가 표시됩니다.

 설치 후 파일 권한 확인 중…
 보안을 위해 'C:/xampp/htdocs/magento24/app/etc' 디렉토리에서 쓰기 권한을 제거하십시오.
 [진행: 1270 / 1270]
 [성공]: Magento 설치가 완료되었습니다.
 [성공]: 관리자 패널 URI: /admin
가져올 항목이 없습니다.

그런 다음 Magento가 Windows에서 작동하도록 하기 위해 다음과 같이 몇 가지 추가 조정을 해야 합니다.

app\etc\di.xml 에서 SymlinkCopy 로 바꿉니다.

 <virtualType name="developerMaterialization" type="Magento\Framework\App\View\Asset\MaterializationStrategy\Factory">
    <인수>
        <argument name="strategiesList" xsi:type="array">
            <item name="view_preprocessed" xsi:type="object">Magento\Framework\App\View\Asset\MaterializationStrategy\Symlink</item>
            <item name="default" xsi:type="object">Magento\Framework\App\View\Asset\MaterializationStrategy\Copy</item>
        </인수>
    </인수>
</가상 유형>

vendor\magento\framework\View\Element\Template\File\Validator.php 에서 138행 을 다음으로 교체합니다.

 $realPath = str_replace('\\', '/',$this->fileDriver->getRealPath($path));

마지막으로 다음 명령을 실행합니다.

 PHP bin/magento 인덱서:재색인
php bin/magento 설정:업그레이드
PHP bin/magento 설정:정적 콘텐츠:배포 -f
PHP bin/magento 캐시:플러시

Magento 2.4.2 이상에 대한 추가 조정

Magento 2.4.2부터는 보안을 강화하기 위해 /pub/ 폴더에서 콘텐츠를 제공하는 것이 필수입니다. 이것이 Magento 2.4.2 버전이 제대로 작동하도록 하기 위해 추가 조정이 필요한 이유입니다.

1단계 : index.php.htaccess 파일을 /pub/ 에서 루트 폴더로 복사합니다.

2단계 : index.php (루트 폴더)에서 아래 줄을 찾습니다.

 __DIR__이 필요합니다. '/../app/bootstrap.php';

그리고 그것을 대체

 __DIR__이 필요합니다. '/앱/부트스트랩.php';

3단계 : 최근에 생성한 Magento 2 데이터베이스( http://localhost/phpmyadmin )로 이동하고 다음 SQL 쿼리를 사용하여 core_config_data 테이블을 찾습니다.

 SELECT * FROM core_config_data

이 테이블에서 다음 행을 삽입할 수 있습니다.

웹/보안/base_static_url http://localhost/magento24/pub/static/
웹/비보안/base_static_url http://localhost/magento24/pub/static/
웹/보안/base_media_url http://localhost/magento24/pub/media/
웹/비보안/base_media_url http://localhost/magento24/pub/media/
magento24 를 Magento 설치 디렉토리로 바꿉니다.
  • 수동으로 행 삽입:
새 테이블 데이터베이스 삽입
Localhost 데이터베이스 새 행 경로 및 값
  • SQL 쿼리가 있는 행 삽입:
 INSERT INTO `core_config_data`(`config_id`, `scope`, `scope_id`, `path`, `value`, `updated_at`) VALUES(NULL, 'default', '0', 'web/secure/base_static_url', 'http://localhost/magento24/pub/static/', current_timestamp());
INSERT INTO `core_config_data`(`config_id`, `scope`, `scope_id`, `path`, `value`, `updated_at`) VALUES(NULL, 'default', '0', 'web/unsecure/base_static_url', 'http://localhost/magento24/pub/static/', current_timestamp());
INSERT INTO `core_config_data`(`config_id`, `scope`, `scope_id`, `path`, `value`, `updated_at`) VALUES(NULL, 'default', '0', 'web/secure/base_media_url', 'http://localhost/magento24/pub/media/', current_timestamp());
INSERT INTO `core_config_data`(`config_id`, `scope`, `scope_id`, `path`, `value`, `updated_at`) VALUES(NULL, 'default', '0', 'web/unsecure/base_media_url', 'http://localhost/magento24/pub/media/', current_timestamp());

새로 추가된 행은 다음과 같아야 합니다.

이제 다음을 사용하여 캐시를 지웁니다.

 PHP bin/magento 캐시:플러시

그리고 프론트엔드를 새로 고칩니다. 이제 구성된 base-url 을 통해 프런트엔드에 액세스할 때 다음과 같은 빈 페이지를 볼 수 있습니다.

샘플 데이터가 없는 Magento 2

이제 구성된 base-url 을 사용하여 Magento 프론트엔드에 액세스할 수 있습니다. 예를 들어 Magento 2.4.2 설치를 통해 http://localhost/magento24/ 에서 새로운 Magento 사이트에 액세스하고 http://localhost/magento24/admin 에서 백엔드에 액세스합니다.

*참고: Magento Admin 계정에 로그인하려고 할 때 이 오류가 발생하는 경우: "2단계 인증을 구성해야 합니다..."

Magento 백엔드 2단계 인증 오류

다음 명령을 실행해 보세요.

 php bin/magento 모듈: Magento_TwoFactorAuth 비활성화

파트 5: 샘플 데이터 가져오기(선택 사항)

다음 명령을 실행하여 샘플 데이터를 가져옵니다.

 PHP bin/magento 샘플 데이터:배포

메시지가 표시되면 Magento 인증 키를 입력합니다. 공개 및 개인 키는 Magento Marketplace 계정에서 생성 및 구성됩니다.

Magento 액세스 키

데이터 가져오기가 완료되면 다음을 실행합니다.

 php bin/magento 설정:업그레이드
PHP bin/magento 설정:정적 콘텐츠:배포 -f
PHP bin/magento 캐시:정리

이제 프론트엔드를 새로 고치면 Luma 테마와 샘플 데이터가 있는 기본 Magento 스토어를 볼 수 있습니다.

Magento 2 Luma 테마

그게 다야! 로컬 호스트에 Magento 2 설치를 완료했습니다. 이제 Magento 2 프론트엔드/백엔드에 액세스하고 Magento 2 기능 탐색을 시작할 수 있습니다. 이 게시물이 도움이 되었기를 바랍니다!


추가 읽기

2022년 최고의 무료 Magento 2 테마 및 템플릿 10개
2022년 최고의 무료 Magento 2 테마 및 템플릿 10개
페리 2022년 1월 3일 8분 읽기
12 최고의 Magento 2 호스팅 제공업체
12 최고의 Magento 2 호스팅 제공업체
헤일리 응우옌 2021년 6월 4일 9분 읽기
10 최고의 Magento 2 웹사이트
10 최고의 Magento 2 웹사이트
페리 2020년 9월 1일 9분 읽기
10가지 최고의 Magento PWA 사례
10가지 최고의 Magento PWA 사례
루크 부 2020년 12월 25일 11분 읽기