SFTP를 사용하여 WordPress에서 파일을 관리하는 방법

게시 됨: 2020-09-18

개발자라면 SFTP 사용에 매우 익숙할 것입니다. 그러나 때때로 WordPress 웹 사이트를 관리하는 나머지 사람들에게는 SFTP를 사용하여 WordPress 웹 사이트를 변경한다는 단순한 언급만으로도 두려움을 느끼기에 충분할 것입니다! 두려워하지 마십시오. 이 기사에서는 SFTP를 사용하여 WordPress 웹 사이트에서 파일을 관리하는 방법을 살펴보고 특히 오류 메시지와 같은 문제를 해결할 때 유용할 수 있는 몇 가지 예를 제공합니다. WordPress 관리자에 대한 액세스가 거부되었습니다.

WordPress가 인기 있는 많은 이유 중 하나는 기술 지향적인 개인이 아닌 사람들 사이에서 유용하기 때문입니다. 즉, WordPress로 멋진 웹사이트를 구축하기 위해 코딩하는 방법을 알 필요가 없습니다. WordPress에서 제공하는 GUI(또는 그래픽 사용자 인터페이스)는 제한된 IT 경험을 가진 사람들도 일반적으로 WordPress 웹 사이트를 상당히 빠르게 구축하거나 편집하는 데 익숙해질 수 있음을 의미합니다.

그러나 WordPress 웹 사이트를 구성하는 기본 파일(일반적으로 수천 개)을 직접 편집해야 하는 작업이 있습니다. 제한된 방법으로 이것은 WordPress 관리자를 통해 수행할 수 있지만 대부분의 경우 웹 호스트 서버에 있는 파일에 액세스해야 합니다. 이것은 SFTP 클라이언트라고 하는 FileZilla 또는 WinSCP와 같은 도구를 사용하여 수행됩니다. 이는 SFTP라는 프로토콜을 사용하여 웹 서버와 통신하고 이를 통해 이 서버에서 안전하게 파일을 전송하거나 업데이트할 수 있기 때문입니다.

SFTP가 무엇인지, 왜 사용해야 하는지, SFTP를 사용하여 WordPress 웹사이트에서 파일을 정확히 관리하는 방법에 대해 자세히 살펴보겠습니다.

SFTP란 무엇입니까?

SFTP가 무엇인지 이해하려면 SFTP의 전구체인 FTP를 살펴봐야 합니다.

FTP(또는 파일 전송 프로토콜)는 클라이언트-서버 아키텍처에 구축된 표준 네트워크 프로토콜이며 FTP 호스트 또는 서버와 인터넷의 FTP 클라이언트(컴퓨터/사용자) 간에 파일을 전송하는 데 사용됩니다.

파일 전송 프로토콜

FTP는 1971년에 처음 개발되었으며 오늘날에도 여전히 일부 상황에서 사용됩니다. 컴퓨터와 서버 간에 파일을 직접 전송할 수 있습니다. 중요한 것은 FTP를 사용하여 전송되는 모든 정보는 일반적으로 암호화되지 않는다는 것입니다. 이는 누구든지 이 전송을 가로챌 수 있음을 의미하며 이는 주요 보안 위험입니다.

SFTP는 FTP의 논리적 후속 제품을 제공합니다. 이것은 Secure File Transfer Protocol의 약자이며 FTP의 주요 약점 중 하나(즉, 암호화 부족)를 극복합니다. SSH 프로토콜의 확장이며 일반 SSH 포트를 사용하여 원격 서버에 안전하게 연결할 수 있는 기능을 사용자에게 제공합니다. 이는 다음과 같은 많은 이점을 제공합니다.

  • 보안 : SFTP 연결을 통해 전송된 데이터는 암호화됩니다. 이는 제3자가 가로채는 모든 데이터를 읽을 수 없음을 의미합니다.
  • 데이터 전송 증가 : SFTP를 통해 전송된 파일에 대해 더 많은 정보를 제공할 수 있습니다. 예를 들어 사용자는 날짜, 시간, 크기, 권한 및 기타 정보와 같은 메타데이터에 정확하게 액세스할 수 있는 반면 일부 FTP 서버, 특히 오래된 서버는 이 정보를 올바르게 읽는 데 문제가 있을 수 있습니다(이로 인해 로컬 파일의 메타데이터로 데이터 이상이 발생할 수 있습니다. 서버에 있는 것과 일치하지 않음).
  • 방화벽 친화적 : SFTP는 단일 연결을 통해 데이터를 교환하므로 방화벽 친화적입니다. FTP와 같은 별도의 채널을 사용하지 않으므로 FTP 연결의 경우와 같이 서버 관리자가 포트 범위를 열도록 강제하지 않습니다.
보안 파일 전송 프로토콜

SFTP를 통해 WordPress 사이트에 액세스하는 방법은 무엇입니까?

SFTP 프로토콜을 통해 WordPress 웹사이트에 연결하려면 다음이 필요합니다.

  • 사용자(클라이언트)가 원격 서버에 안전하게 연결할 수 있도록 하는 운영 체제와 호환되는 SFTP 클라이언트
  • 연결하려는 서버의 SFTP 자격 증명. 여기에는 호스트 이름, 사용자 이름, 암호 및 포트가 포함됩니다.

SFTP 서버에 연결하는 정확한 방법은 웹 호스팅 제공업체마다 다릅니다. 사용자가 하고 싶어하는 것은 일반적인 일이며 모든 웹 호스트는 SFTP를 통해 서버에 액세스하는 방법에 대한 포괄적인 지침을 제공할 수 있어야 합니다.

어떤 SFTP 클라이언트를 사용해야 합니까?

선택할 수 있는 몇 가지 훌륭한 SFTP 클라이언트가 있습니다. 보너스로, 그들 중 많은 사람들이 무료로 사용할 수 있습니다! Windows 사용자가 가장 좋아하는 것 중 하나는 WinSCP입니다. 예상대로 SFTP를 지원하는 것 외에도 여러 프로토콜을 지원하고 사용하기 쉬운 인터페이스에 번들로 제공되는 전송 재개와 같은 사용자 친화적인 기능을 자랑합니다.

WinSCP의 인기 있는 대안은 Windows, Linux 및 Mac OSX와 호환되는 Filezilla입니다. 사용하기 쉽고 다양한 언어로 제공되며 대용량 파일의 이력서 및 전송을 지원합니다.

WordPress 웹사이트를 관리할 때 SFTP를 사용해야 하는 이유는 무엇입니까?

SFTP를 사용하여 WordPress 웹 사이트를 관리하는 데는 여러 가지 이유가 있습니다. 아래에 몇 가지를 나열하겠습니다.

문제 해결

SFTP를 통해 WordPress 사이트에 액세스하는 것은 문제를 해결하려고 할 때 매우 중요할 수 있습니다.

파일 권한 변경

파일 권한은 사용자에게 허용된 액세스 유형을 결정합니다. WordPress 설치 직후에 올바른 권한을 설정하는 것이 중요합니다. 그렇지 않으면 치명적인 오류가 발생하거나 빈 화면이 표시될 수 있으며 웹사이트가 악의적인 활동에 노출될 수도 있습니다.

그러나 파일 권한은 '중단'될 수 있으며(때로는 명백한 이유 없이) 이러한 일이 발생하면 SFTP를 사용하여 서버에서 이를 재설정할 수 있어야 합니다. 이러한 일이 발생했다는 가장 일반적인 징후는 웹사이트의 URL을 방문하려고 할 때 "403 금지된 오류"가 표시되거나 미디어 라이브러리에 파일을 업로드할 수 있는 권한이 거부된 경우입니다.

이와 같은 문제는 여러 가지 이유로 발생할 수 있습니다. 일반적인 원인은 플러그인이 액세스하는 파일의 권한을 변경하여 최근에 설치한(또는 업데이트된) 플러그인을 비활성화하는 것이 좋은 출발점이 될 수 있도록 하는 플러그인인 경우가 많습니다.

WinSCP를 SFTP 클라이언트로 사용하는 경우 파일이나 폴더를 마우스 오른쪽 버튼으로 클릭한 다음 '속성' 메뉴로 이동하여 파일 권한을 변경할 수 있습니다.

선택되어 있는(또는 선택하지 않은) 파일 권한 목록이 표시되며 그에 따라 업데이트할 수 있습니다.

SFTP를 통해 파일 권한 편집

"예정된 유지 보수를 위해 잠시 사용할 수 없습니다. 잠시 후 다시 확인하십시오" 메시지

WordPress 웹 사이트에서 테마 또는 플러그인을 업데이트하고 이 업데이트가 진행되는 동안 사이트를 보려고 하는 사람은 "예약된 유지 관리에 잠시 사용할 수 없습니다. 잠시 후 다시 확인하십시오”라는 메시지가 표시됩니다.

이 메시지는 일시적이어야 하며 플러그인 또는 테마 업데이트가 완료되면 자동으로 삭제됩니다(유지 관리 플러그인을 사용하여 이 메시지를 강제로 표시하지 않는 한). 이와 같은 업데이트 중에 웹사이트의 루트 폴더에 임시 .maintenance 파일이 생성되고 웹사이트의 라이브 모드가 "유지 관리 모드"로 변경됩니다. 이 파일은 일반적으로 업데이트가 완료되면 몇 초 후에 삭제됩니다.

그러나 때때로 이 메시지는 업데이트가 완료된 후에도 계속 표시됩니다(당연히 짜증나는 일입니다!). 느린 서버 응답, 메모리 문제 또는 요청 시간 초과로 인한 것일 수 있습니다. 이러한 경우 .maintenance 파일은 정상적인 상황에서 발생하는 것처럼 자동으로 삭제되지 않습니다.

이 문제를 해결하려면 SFTP를 통해 루트 폴더에 액세스하고 .maintenance 파일을 삭제할 수 있습니다. 바라건대 이것은 귀하의 웹 사이트가 이제 정상적으로 작동한다는 것을 의미합니다.

참고: 항상 그렇듯이 WordPress 웹사이트에서 작업을 시작하기 전에 가능 하면 백업해야 합니다.

웹사이트의 치명적인 오류

WordPress 사이트에 "Critical error on your website" 메시지가 표시되면 특히 이 오류로 인해 때때로 관리 영역(또는 웹사이트의 프런트 엔드)에 액세스할 수 없기 때문에 혈압이 상승할 수 있습니다.

이러한 경우의 원인은 일반적으로 플러그인 또는 테마/플러그인과 사용자 정의 코드 간의 충돌입니다.

이 문제를 해결하는 첫 번째 단계는 WordPress 관리자에 대한 액세스 권한을 복구하는 것입니다. 여기에서 SFTP를 사용하는 것이 매우 유용할 수 있습니다. 이렇게 하려면 다음 단계를 따르세요.

  1. SFTP를 통해 사이트 서버에 로그인하고 'logs'라는 폴더가 표시되어야 하는 루트 폴더로 이동합니다. 액세스할 수 없는 경우 호스팅 제공업체에 문의하세요. 이 로그 내에서 웹사이트의 어떤 요소가 심각한 오류를 일으키는지에 대한 단서를 제공할 수 있는 텍스트 문서를 찾을 수 있습니다.
  2. 예를 들어 이러한 로그에 다음과 같은 오류 메시지가 표시될 수 있습니다.

    "오류 'PHP 메시지: PHP 치명적인 오류: 잡히지 않은 오류: 'WC_Subscriptions_Admin' 클래스를 /********-www/wp-content/plugins/woocommerce-subscriptions/woocommerce-subscriptions.php:73에서 찾을 수 없습니다.\nStack 추적:\n#0 "

    이것은 WooCommerce 구독 플러그인의 방향을 알려줍니다.
  3. 이제 플러그인을 비활성화해야 하는 치명적인 오류에 대한 가능한 용의자를 식별했습니다. 폴더 이름을 변경하여 이 작업을 수행할 수 있습니다. "woocommerce-subscriptions.disabled"와 같이 변경할 수 있습니다.
  4. 이제 WordPress 관리자에 로그인하십시오. 할 수 있다면 (부분적으로) 문제를 해결한 것입니다. 이제 문제가 있는 플러그인 문제를 해결하는 일만 남았습니다.
  5. WordPress 로그에서 문제를 일으킬 수 있는 플러그인을 식별할 수 없는 경우(또는 이에 대한 액세스 권한이 없는 경우) 모든 플러그인을 비활성화할 수 있습니다. 이렇게 하려면 기본 '플러그인' 폴더의 이름을 'plugins.disabled'와 같은 이름으로 바꿉니다. 이제 WP Admin에 액세스할 수 있으면 문제가 플러그인에 있다는 것을 알 수 있습니다. 이 시점에서 플러그인 폴더의 이름을 다시 '플러그인'으로 변경한 다음 범인을 찾을 때까지 이름을 바꿔 각 플러그인을 하나씩 비활성화해야 합니다.

플러그인을 비활성화해도 '중요한 오류' 문제가 해결되지 않으면 테마가 범인인지 확인하는 것이 좋습니다. 이를 수행하는 방법은 기본적으로 플러그인과 완전히 동일합니다.

  1. SFTP를 통해 서버에 로그인하고 'wp-content'라는 폴더로 이동합니다. 이 폴더에는 'themes'라는 폴더가 있습니다. 이것을 열면 현재 로드된 테마가 표시됩니다.
  2. 플러그인에 대해 했던 것처럼 비활성화하려면 활성 테마의 이름을 바꿉니다. 이것은 (예를 들어) 'salient'에서 'salient.disabled'로 변경하는 것을 의미할 수 있습니다.
  3. WordPress는 자동으로 기본 테마로 변경되어야 하며 이제 관리자 패널에 액세스할 수 있는지 확인할 수 있습니다(그리고 중요 경고가 사라짐). 그렇다면 이제 문제가 테마에 있거나 테마 및 플러그인과 충돌한다는 것을 알게 될 것입니다.

구성 파일 문제

때때로 WordPress 구성 파일(또는 wp-config.php)을 편집해야만 해결할 수 있는 특정 문제가 발생할 수 있습니다. 이러한 문제 중 하나는 WordPress 사이트에서 데이터베이스 연결을 설정할 수 없을 때 발생합니다. 이 경우 다음과 같은 경고가 표시됩니다.

이런 일이 발생하면 데이터베이스 사용자 이름과 암호가 wp-config.php 파일에 올바르게 저장되었는지 확인할 수 있습니다. SFTP 클라이언트를 사용하여 이 파일을 열면 다음과 같은 내용이 표시되어야 합니다.

이 파일을 확인/업데이트하려면 데이터베이스 사용자 이름과 암호가 무엇인지 알아야 합니다. WordPress 호스트가 이를 지원할 수 있어야 합니다.

개발 작업

SFTP 클라이언트는 웹사이트를 구성하는 파일에 직접 액세스할 수 있도록 해주기 때문에 웹사이트 개발자가 많이 사용하게 될 도구입니다. 개발자가 수행하는 일반적인 작업은 다음과 같습니다.

  • functions.php 파일을 편집하여 사용자 정의 함수를 만들고, 후크/액션을 추가하고, 특정 스크립트를 등록하거나 무시합니다.
  • WordPress용 맞춤 템플릿 만들기
  • 자식 테마로 WordPress 테마 템플릿 재정의
  • CSS 파일을 편집하여 웹사이트의 스타일 사용자 지정
  • 커스텀 플러그인 작업

SFTP의 다른 용도

SFTP의 일반적인 용도는 온라인 파일 전송 서비스를 통해 이동하고 싶지 않은 대용량 파일(예: 민감한/개인 문서)을 전송하는 것입니다. SFTP는 웹사이트를 통해 사용할 웹 서버에 다양한 파일을 추가하는 데도 유용합니다. 여기에는 웹 사이트의 비표준 글꼴을 생성하는 데 사용되는 PDF 또는 글꼴 파일이 포함될 수 있습니다.

요약

WordPress 파일을 직접 관리하기 위해 SFTP를 통해 WordPress 웹사이트에 액세스하는 방법을 배우는 것은 마음대로 사용할 수 있는 유용한 기술입니다. 웹 사이트를 유지 관리하고 개발하는 데 진지한 사람이라면 SFTP 클라이언트와 이를 사용하는 방법에 대한 확고한 이해가 툴킷의 필수 부분입니다.

SFTP를 통해 웹 사이트에 액세스한 적이 없다면 WordPress 웹 사이트를 구성하는 데 얼마나 많은 파일이 들어가는지 확인할 수 있습니다. 웹사이트의 기본 구조에 익숙해지면 WordPress의 포럼을 탐색할 때 몇 가지 '아하' 순간이 생길 수 있습니다.