Computer >> 컴퓨터 >  >> 프로그래밍 >> PHP

PHP ftp_site() 함수 완벽 가이드 – FTP SITE 명령 사용법

PHP의 ftp_site() 함수는 FTP 서버에 SITE 명령을 전송하는 함수입니다. SITE 명령은 서버마다 지원 범위가 다르며, 주로 파일 권한(chmod) 변경이나 그룹 멤버십 설정 같은 운영체제(OS) 고유의 기능을 처리할 때 사용됩니다.

문법(Syntax)

ftp_site(conn, command);

매개변수(Parameters)

  • conn − FTP 연결 리소스를 나타냅니다.

  • command − 실행할 SITE 명령입니다. 이 명령은 서버마다 다를 수 있으며, 파일 권한 변경이나 그룹 멤버십 관리와 같은 OS 특화 기능을 수행하는 데 사용됩니다.

반환값(Return)

ftp_site() 함수는 명령이 성공적으로 실행되면 TRUE를, 실패하면 FALSE를 반환합니다.

예제(Example)

다음은 ftp_site() 함수를 사용하여 파일 권한을 777로 변경하는 예제입니다 −

<?php
   $ftp_server = "192.168.0.4";
   $ftp_user = "username";
   $ftp_pass = "gfhgfj236k";
   $conn = ftp_connect($ftp_server) or die("Could not connect to $ftp_server");
   $login = ftp_login($conn, $ftp_user, $ftp_pass);
   if (ftp_site($conn, "chmod 777 myfile.txt")) {
      echo "명령이 성공적으로 실행되었습니다!";
   } else {
      echo "명령 실행에 실패했습니다!";
   }
   // 연결 종료
   ftp_close($conn);
?>

예제 설명

위 코드는 다음과 같은 순서로 동작합니다.

  • 1단계: ftp_connect()로 지정된 FTP 서버(192.168.0.4)에 접속합니다. 접속에 실패하면 die()가 호출되어 스크립트가 종료됩니다.

  • 2단계: ftp_login()으로 사용자 이름과 비밀번호를 통해 로그인합니다.

  • 3단계: ftp_site()chmod 777 myfile.txt 명령을 전송하여 myfile.txt 파일의 권한을 읽기·쓰기·실행 모두 허용으로 변경합니다.

  • 4단계: 결과에 따라 성공 또는 실패 메시지를 출력하고, 마지막에 ftp_close()로 FTP 연결을 닫습니다.

참고 사항

  • SITE 명령은 표준 FTP 프로토콜의 일부이지만, 실제로 지원되는 명령은 FTP 서버 소프트웨어와 운영체제에 따라 달라집니다.

  • 파일 권한 변경 외에도 서버에서 제공하는 다양한 SITE 명령이 있으므로, 사용 중인 서버의 문서를 확인하는 것이 좋습니다.

  • 보안상 민감한 정보인 FTP 비밀번호는 코드에 직접 하드코딩하지 말고, 환경 변수나 별도의 설정 파일로 관리하는 것이 안전합니다.