Magento 사이트에 액세스 할 수 있도록 기본 URL을 어떻게 수정합니까?


35
  • Base Urls를 변경했는데 이제 내 웹 사이트에 액세스 할 수 없습니다
  • 모든 것을 새로운 서버로 옮기고 base_url을 변경하지 않았으며 웹 사이트에 액세스 할 수 없습니다

BaseURL 설정을 base_url을 어떻게 변경하거나 복원합니까?

답변:


63

증상 : Base Urls를 변경 한 후 웹 사이트에 액세스 할 수 없거나 모든 것을 새 서버로 옮겼습니다. 변경하지 않았으며 base_url웹 사이트에 액세스 할 수 없습니다.

phpMyAdmin으로 base_url 설정을 변경하거나 복원하는 방법

지침은 "기본 저장소보기"가 "기본 구성"에서 해당 설정을 상속하도록 설정된 간단한 "하나의 저장소"웹 사이트를위한 것입니다. 선택하지 않은 각 Use Website확인란 마다 아래에 언급 된 표 행의 추가 인스턴스가 있습니다 .

  1. core_config_dataphpMyAdmin에서 테이블을 엽니 다 .

  2. path열 별로 테이블을 정렬 하고 안전하지 않은 섹션에 대해 다음 행을 찾으십시오 .

열

PATH                         VALUE
web/unsecure/base_url        http://www.example.com/
web/unsecure/base_link_url   {{unsecure_base_url}}
web/unsecure/base_skin_url   {{unsecure_base_url}}skin/
web/unsecure/base_media_url  {{unsecure_base_url}}media/
web/unsecure/base_js_url     {{unsecure_base_url}}js/
  1. 교체 http://www.example.com/하여 적절한 도메인 URL로 (후행가 필요 슬래시) 및 하위 폴더에 설치 한 경우에 그것을 추가 /뒤에.

  2. 보안 섹션에 대해 다음 행을 찾으십시오. 이들은 다음과 같아야합니다.

열

PATH                        VALUE
web/secure/base_url         https://www.example.com/
web/secure/base_link_url    {{secure_base_url}}
web/secure/base_skin_url    {{secure_base_url}}skin/
web/secure/base_media_url   {{secure_base_url}}media/
web/secure/base_js_url      {{secure_base_url}}js/
  1. 교체 https://www.example.com/하여 적절한 도메인 URL로 (후행가 필요 슬래시) 및 하위 폴더에 설치 한 경우에 그것을 추가 /뒤에. 보안 인증서를받지 못하고 TLS / SSL을 아직 활성화 한 경우 http대신https

  2. 에서 명확한 내용 var/cache, var/session변경 한 후 디렉토리 base_urls.

구성이 캐시되고이를 지우면 캐시에서 세션을 지우고 core_config_data테이블 에서 구성 데이터를 다시 읽고 적절한 정보로 세션을 다시 설정해야합니다.

참고 : 당신이 당신을 설정 한 경우 base_url제대로 web/unsecure/base_url하고 web/secure/base_url당신이 변화와 혼란의 주위에없는 {{UNSECURE_BASE_URL}}및 {{SECURE_BASE_URL}}항목의 나머지 부분에서 매크로를.

명령 행에서 mysql로 ​​base_url 설정을 변경하는 방법

  1. MySQL 데이터베이스에 로그인하고 $ USER를 데이터베이스 사용자 이름으로 바꾸고 $ DBASE를 데이터베이스 이름으로 바꾸십시오. 비밀번호를 묻는 메시지가 나타납니다.

mysql -u $USER -p $DBASE

  1. 다음은 base_url 값을 변경하는 SQL 명령입니다. 안전하지 않은 http://www.example.com/보안 https://www.example.com/(SSL / TLS가 활성화 된 경우 https는 http이어야 함)을 적절한 도메인 URL (트레일 슬래시 필요)로 바꾸고 하위 폴더에 설치 한 경우 뒤에 추가 /하십시오.

SQL 명령

UPDATE core_config_data SET value = 'http://www.example.com/' WHERE path LIKE 'web/unsecure/base_url';
UPDATE core_config_data SET value = 'https://www.example.com/' WHERE path LIKE 'web/secure/base_url';
  1. 다음을 사용하여 base_url 설정을 확인하십시오.

SQL 명령

SELECT path,value FROM core_config_data WHERE path LIKE 'web/unsecure/base%';
SELECT path,value FROM core_config_data WHERE path LIKE 'web/secure/base%';
  1. 에서 명확한 내용 var/cache, var/session변경 한 후 디렉토리 base_urls. 구성이 캐시되고이를 지우면 캐시에서 세션을 지우고 core_config_data테이블 에서 구성 데이터를 다시 읽고 적절한 정보로 세션을 다시 설정해야합니다.

1
참고 : var/디렉토리 에 대한 권한 이 엉망인 극단적 인 경우 Magento는 여기에 설명 된대로 시스템 /tmp디렉토리 에 Magento 캐시를 저장하며 캐시를 지우면 서버를 재부팅하거나 권한이있는 사람이 가져 오기 전까지 가져온 캐시 된 구성 항목이 지워지지 않습니다. Magento의 잘못된 캐시를 삭제할 수 있습니다. core_config_data
— Fiasco Labs

잘못 배치 된 캐시 디렉토리를 찾으려면 설치할 수있는 경우 n98-magerun명령 n98-magerun.phar sys:info을 사용하여 하나의 항목이있는 기본 시스템 정보 목록을 가져 오십시오 Cache Directory.
— Fiasco Labs

이것은 나를 위해 완벽하게 작동합니다.
— Amol Bhandari SJ

12

Magento2에는 SQL을 거치지 않고 아래 명령을 사용하여 Magento를 통해 직접이 작업을 수행하는 방법도 있습니다.

Magento의 루트 디렉토리 내에서 아래 명령을 실행하십시오 :

  1. 안전하지 않은 URL 설정

    bin/magento setup:store-config:set --base-url="http://www.magento2.com/"
  2. 보안 URL 설정

    bin/magento setup:store-config:set --base-url-secure="https://www.magento2.com/"
  3. 캐시 지우기

    bin/magento cache:flush

1
이 후 base_link_url을 편집해야 할 수도 있습니다.
— user3442612

기본 URL을 https로 설정하여 https를 통해 모든 트래픽을 리디렉션 한 사람은이 문제를 해결할 수 있습니다 (예 : Certbot과 함께 SSL 인증서를 설치할 때)
— Antonio Araujo
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.