지속적으로 고도몰에서 SFTP 접속이 안되는 현상이 벌어졌다. 이 부분 때문에 굉장히 많은 시간을 허비하며 많은 시도들을 해보았는데 아래와 같다.

 

1. 프로토콜 지정하기

고도몰에서는 프로토콜이 지정되야만 접속가능한 시퀀스를 만들어놨다. 물론 이건 고도몰+ 이상부터 한정된다. 

sftp:// 와 같이 지정하는 부분인데 이 부분이 굉장히 중요하다.

 

2. 포트를 지정해야한다

포트를 다른 글에서는 21번 22번을 쓴다는 경우도 있었으나, 고도몰 Pro+ 에서는 지정된 포트가 따로 있다.

 

이 부분을 참고하려면 관리자 페이지가 아니라 NHN Commerce 페이지로 들어가서 찾아줘야한다

(한참을 찾아 해맸다.)

이렇게 되어있으니까, 이러한 부분을 참조해서 VSCode 에서는 Protocol 을 지정해서 넣어주고

파일질라에서는 Protocol 을 포함한 주소를 넣어준다

 


그럼에도 불구하고 나처럼 안되는 매우 빡치는 케이스가 있는데 여러 문의 결과

고도몰 Pro+ 에서는 클라우드 기반에다가 IP 기반의 ACL 을 처리해주지 않으면 작동하지 않는 것으로 판단된다.

 

 

아래처럼 요로코롬 아이피 상콤하게 등록해서 ACL 컨트롤링을 해줘야 SFTP에 들어갈 수 있는 매우 재미있는 구조를 개설해두셨다.

 

 

그리고나서 휴면회원에 대한걸 처리를 해야하는데... 휴면회원이 무려 47만명 이였다.

특히 휴면 회원중에 예치금과 마일리지를 가지고 있는 경우가 있는데, 이 때에는 전체 삭제가 안된다.

 

그렇다면 무슨 말이다? 이 부분에 대해서 별도로 코딩을 해줘야 한다는 이야기다

 


일단 고도몰에서 지원하는 원본소스에 수정을 가한후 타격을 가할 수 있게 해서 삭제 프로세스에 성공하긴 하였으나, PHP 기반에서 js 랑 통신할 때의 timeout 시간이 어느정도 있기 때문에 47만명을 한번에 삭제할 순 없다.

- 이럴 때에는 데이터베이스에서 SQL 백업을 눌러주고 삭제하는 수 밖에 없다.

 

있었는데

 

이젠 없습니다

 

'WEB > PHP' 카테고리의 다른 글

FTP 설정 방법 - 고도몰  (0) 2023.05.18
The difference between "public" and "public static"?  (0) 2021.11.23
PHP 실행 지연(delay) 시키기  (0) 2021.11.23
mb_substr  (0) 2021.09.13
PHP Superglobal - $_REQUEST  (0) 2021.08.18
FTP 설정 방법
고도 쇼핑몰은 쇼핑몰에 외부 FTP 프로그램을 연결하여, 효과적인 쇼핑몰 운영이 가능합니다.

* e나무 무료형 쇼핑몰은 외부 FTP 접속이 지원되지 않습니다.
* 모든 고도 쇼핑몰은 쇼핑몰 관리자 내 webFTP를 지원합니다. * 쇼핑몰 메인계정 신청을 위해서는 대표도메인 연결이 필요합니다.
FTP란?
FTP(File Transfer Protocol)은 이용자의 PC와 쇼핑몰 호스팅 서버 간 파일을 송수신하는 프로그램을 말합니다. FTP는 파일 전송 전용 서비스이기 때문에, 많은 양의 파일을 일괄적으로 주고 받을 때 효과적입니다.

쇼핑몰에 필요한 파일이 대량이고, 빈번하게 전송이 필요한 경우 FTP를 이용하면 효율적으로 쇼핑몰을 운영할 수 있습니다.
외부 FTP 프로그램을 이용한 FTP 접속 방법
대표적인 공개 FTP 접속 프로그램인 ‘Filezilla’로 고도 쇼핑몰의 FTP 접속 방법을 알아보겠습니다.
* 외부 FTP 접속이 허용되는 고도 쇼핑몰은 ‘Filezilla’ 외 FTP 프로그램으로도 접속이 가능합니다.

1. ‘Filezilla’ 프로그램을 내려 받아 설치를 완료합니다. [공식 다운로드 페이지 바로가기]

2. 상단 메뉴 부분에 아래와 같이 입력 후, ‘빠른 연결’을 클릭합니다.
(호스트 : www를 제외한 쇼핑몰주소 | 사용자명 : FTP 아이디 | 비밀번호 : FTP 비밀번호 | 포트 : 21)

* FTP 계정정보는 [마이고도 > 쇼핑몰 관리 > 쇼핑몰 목록 > 이용 중 쇼핑몰 ‘서비스관리’ > 기본관리 > FTP 관리]에서 신청 또는 확인할 수 있습니다.

3. 연결이 완료되면 내 PC와 쇼핑몰 호스팅 간 파일 업다운로드가 가능합니다.
(로컬 사이트가 내 PC영역, 리모트 사이트가 내 쇼핑몰 호스팅 영역입니다.)
유의사항
- e나무 무료형 쇼핑몰의 경우 외부 FTP 접속이 지원되지 않습니다.(쇼핑몰 관리자 내 webFTP 사용 가능)
- FTP 접속 정보는 외부에 유출되지 않도록 유의하여 주시기 바랍니다.

© NHN godo: Corp. All rights Reserved.

위 내용은 엔에이치엔고도㈜의 저작물로, 제공되는 자료에 대한 무단 복제 및 배포를 금합니다.

jQuery를 사용해 배열을 관리하고자 할 때 each() 메서드를 사용할 수 있습니다.

each() 메서드는 매개 변수로 받은 것을 사용해 for in 반복문과 같이 배열이나 객체의 요소를 검사할 수 있는 메서드입니다.

 

 

each() 메서드는 다음과 같은 두 가지 타입이 있습니다.

javascript
// jQuery 유틸리티 메서드
$.each(object, function(index, item){

});

// jQuery 일반 메서드
$(selector).each(function(index, item){

})

 

위의 메서드를 차례로 알아보도록 하겠습니다.

 

 

$.each()

$.each() 메서드는 object 와 배열 모두에서 사용할 수 있는 일반적인 반복 함수입니다.

다시 말해, 배열과 length 속성을 갖는 배열과 유사 배열 객체들을 index를 기준으로 반복할 수 있습니다.

첫 번째 매개변수로 배열이나 객체를 받습니다.

그리고 두번째 매개변수로 콜백함수를 받으며 콜백함수의 인자로는 인덱스와 값을 인자로 갖습니다.

다음의 예제를 통해 살펴보도록 합니다.

javascript
// 객체을 선언
var arr= [
    {title : '다음', url : 'http://daum.net'},
    {title : '네이버', url : 'http://naver.com'}
];

// $.each() 메서드의 첫번째 매겨변수로 위에서 선언한 배열은 전달
$.each(arr, function (index, item) {
    // 두 번째 매개변수로는 콜백함수인데 콜백함수의 매개변수 중
    // 첫 번째 index는 배열의 인덱스 또는 객체의 키를 의미하고
    // 두 번째 매개 변수 item은 해당 인덱스나 키가 가진 값을 의미합니다.

    var result = '';

    result += index +' : ' + item.title + ', ' + item.url;

    console.log(result);

    // 0 : 다음, http://daum.net
    // 1 : 네이버, http://naver.com

})

위에서 첫 번째 매개변수에 배열을 전달했습니다. 배열을 받게 되면 콜백함수의 index, item 은 배열의 인덱스와 값을 가리키게 됩니다.

 

다음의 예제는 배열대신 객체를 전달하는 경우입니다.

javascript
// 객체를 선언
var obj = {
    daum: 'http://daum.net',
    naver: 'http://naver.com'
};

// $.each() 메서드의 첫번째 매겨변수로 위에서 선언한 객체를 전달
$.each(obj, function (index, item) {

    // 객체를 전달받으면 index는 객체의 key(property)를 가리키고
    // item은 키의 값을 가져옵니다.

    var result = '';

    result += index + ' : ' + item;

    console.log(result);

    // daum : http://daum.net
    // naver : http://naver.com

})

 

 

 

$().each()

다음과 같은 마크업이 있다고 가정해 봅니다.

html
<ul class="list">
    <li>Lorem ipsum dolor sit amet.</li>
    <li>Lorem ior sit amet.</li>
    <li>Lorem ipsum </li>
</ul>

 

$().each() 도 반복문과 비슷합니다.

javascript
$('.list li').each(function (index, item) {
    // 인덱스는 말 그대로 인덱스
    // item 은 해당 선택자인 객체를 나타냅니다.
    $(item).addClass('li_0' + index);

    // item 과 this는 같아서 일반적으로 this를 많이 사용합니다.
    // $(this).addClass('li_0' + index);
});

위 코드를 실행하면 li 의 클래스에 li_00, li_01, li_02 가 추가되어 있을 것입니다.

제이쿼리에 선택자를 넘기면 해당 선택자를 자바스크립트의 반복문과 같이 사용된다고 보면 됩니다.

출처: https://webclub.tistory.com/455 [Web Club:티스토리]

  • Hi.

    I get the following error when trying to access my newly updated webpage. it is now runing php 7.2.

    Warning: call_user_func_array() expects parameter 1 to be a valid callback, function ‘create_my_post_types’ not found or invalid function name in /home/2/l/lysefjordensjokj/www/wp-includes/class-wp-hook.php on line 286

    Warning: Cannot modify header information – headers already sent by (output started at /home/2/l/lysefjordensjokj/www/wp-includes/class-wp-hook.php:286) in /home/2/l/lysefjordensjokj/www/wp-includes/pluggable.php on line 1223

    I know nothing about any code or programming. Anyone know if this is a quick fix.

    please help, its my girlfriends business site. 

    The page I need help with: [log in to see the link]

Viewing 1 replies (of 1 total)
  • Moderator
    Steve Stern (sterndata) 

    (@sterndata)

    Forum Moderator & Support Team Rep

    You need to find out which plugin (or theme) is doing this and then look for an update.

    This may be a plugin or theme conflict. Please attempt to disable all plugins, and use one of the default (Twenty*) themes. If the problem goes away, enable them one by one to identify the source of your troubles.

    If you can install plugins, install “Health Check”: https://wordpress.org/plugins/health-check/ On the troubleshooting tab, you can click the button to disable all plugins and change the theme for you, while you’re still logged in, without affecting normal visitors to your site. You can then use its admin bar menu to turn on/off plugins and themes one at a time.

    Also, edit your wp-config.php and make sure WP_DEBUG is set to false, not true.

+ Recent posts