FTP 액세스 없이 WordPress를 업데이트하는 방법

FTP 계정을 사용하지 않고 WordPress 및 플러그인을 업데이트할 수 없는 경우가 있습니다. 이는 일반적으로 WordPress가 /wp-content 폴더와 직접 통신할 수 없을 때 발생합니다.

FTP 액세스 없이 WordPress를 업데이트하는 방법

이런 일이 발생하더라도 이 문제를 우회하고 FTP 액세스 없이 WordPress를 수정할 수 있는 특정 방법이 있습니다.

무슨 일이야?

웹 서버에 필요한 모든 파일에 접근할 수 있는 권한이 있으면 WordPress와 설치한 모든 플러그인이 자동으로 업데이트됩니다. FTP/SFTP 또는 SSH 액세스가 필요하다는 의미는 아닙니다. 대신 웹 서버에서 특정 파일 권한을 설정하기만 하면 됩니다. 시스템은 모든 방법을 시도하고 아무 것도 작동하지 않으면 FTP로 돌아갑니다.

다음 순서로 발생합니다.

  1. 시스템이 /wp-content에 파일 쓰기를 시도합니다.
  2. 성공하면 파일 소유권을 고유 식별자(UID)와 비교하기 시작합니다. 일치하면 모든 확장을 설치하고 WordPress를 업데이트할 수 있습니다.
  3. 이 방법이 실패하면 시스템에서 업데이트할 수 없다고 알려줍니다.

이 자동 검사에 의존하지 않으려면 /wp-config에서 상수를 정의할 수 있습니다. 이 상수는 일반적으로 'FS_Method'입니다.

'FS_METHOD' 입력

이 문제를 해결하는 가장 빠른 방법은 상수를 정의하는 것입니다. 이것은 사용할 최상의 파일 시스템을 식별하기 위해 자동 검사에 의존하고 싶지 않을 때 유용합니다. /wp-config.php 파일에서 'FS_Method'를 정의하여 이를 수행할 수 있습니다.

방법은 다음과 같습니다.

/wp-config.php 찾기

작업을 수행하기 전에 /wp-config.php 파일을 열어야 합니다. WordPress 루트 폴더에서 찾을 수 있습니다. 찾는 데 문제가 있는 경우 WordPress 설치 프로그램 폴더에서도 찾을 수 있습니다. 파일 위치는 wordpress/wp-config.php입니다.

wp 구성

FS_METHOD 삽입

php 파일에 코드를 붙여넣어야 합니다. 코드의 마지막 줄 아래에 다음을 추가해야 합니다.

define('FS_METHOD','direct');

FTP 액세스 없이 WordPress 업데이트

이 코드를 추가하면 문제를 우회할 수 있습니다. 입력하면 서버의 웹 사이트 루트 폴더에 파일을 업로드할 수 있으며 즉시 작동하는 데 문제가 없습니다.

FTP 문제를 해결하면 애드온, 확장 프로그램, 웹사이트 테마 및 기타 업데이트를 설치할 수 있습니다.

FS_METHOD에 대한 세부 정보

FS_METHOD는 파일 시스템 방법을 강제합니다. direct, ssh2, ftptext 또는 ftpsockets의 네 가지 중 하나만 선택해야 합니다. 이전 예제의 코드는 '직접' 방식을 사용했습니다. 이러한 방법은 기본 설정에 따라 정렬됩니다. 첫 번째 환경 설정은 '직접'이고 네 번째 환경 설정은 'ftpsockets'입니다.

  1. "직접"이 첫 번째 기본 설정입니다. 이 설정은 시스템이 자동으로 선택하는 설정입니다. 이것은 시스템이 PHP 내에서 Direct File/IO 요청을 사용하도록 강제합니다. 구성이 잘못된 호스트에서 이러한 요청으로 인해 보안 문제가 발생할 수 있습니다.
  2. "ssh2"는 두 번째 기본 설정입니다. 이 설정은 설치되어 있는 경우 시스템이 SSH PHP 확장을 사용하도록 강제합니다.
  3. "ftptext"는 세 번째 기본 설정입니다. 이 설정은 시스템이 FTP 액세스를 위해 FTP PHP 확장을 사용하도록 합니다.
  4. "ftpsockets"는 네 번째 기본 설정입니다.

업데이트에 문제가 발생하지 않는 한 이 코드를 구현하면 안 됩니다. 따라서 변경 후에도 개선 사항이 없으면 다시 변경하거나 제거하는 것이 좋습니다. 일반적으로 자동 업데이트가 실패하면 'ftpsockets' 옵션이 작동합니다.

대안: SSH SFTP 업데이터 지원 받기

WordPress는 최근에 플러그인을 추가했습니다. SSH SFTP 업데이터 지원 이 문제를 해결할 수 있습니다. 이 플러그인은 WordPress 설치를 항상 최신 상태로 유지합니다. 이 문제를 해결하기 위해 phpseclib(보안 통신 라이브러리)를 사용합니다.

이 앱을 설치할 때 /wp-config.php로 이동하여 다음 코드를 삽입합니다.

define (‘FS_Method’, ‘ssh2’);

일단 그렇게 하면 SFTP 및 SSH에서 서버를 처리하는 데 훨씬 덜 어려움을 겪을 것입니다.

고급 사용자의 경우: 수동으로 SSH2 활성화

업데이트, 플러그인 및 테마 업로드에 SSH2를 사용하려면 자체 SSH 키를 만들고 PHP SSH 모듈을 설치해야 합니다. 이렇게 하면 WordPress에서 SSH2를 사용할 수 있음을 확인할 수 있습니다. 즉, 업그레이드를 수행할 때 SSH2 옵션이 표시됩니다.

코드를 입력하여 SSH 키를 생성합니다.

ssh-keygen
cd~/.ssh
cp id_rsa.pub authorized_keys

그런 다음 WordPress에서 이러한 파일에 액세스할 수 있도록 권한을 변경합니다.

cd ~
chmod 755 .ssh
chmod 644 .ssh/*

ftp 액세스 없이 wordpress 업데이트

결론적으로

FTP 문제는 공유 호스팅을 사용하고 권한과 소유권이 중복되어 충돌이 발생하는 경우 자주 나타납니다. 이러한 이유로 FTP 세부 정보를 제공하지 않고도 WordPress를 업데이트하고 수정할 수 있도록 "FS_METHOD"를 정의하는 것이 좋습니다.