PHP FTP: доступ запрещен - PullRequest
       1

PHP FTP: доступ запрещен

4 голосов
/ 01 ноября 2011

Я работал с FTP-загрузкой со своей php-страницы.

<?php
error_reporting(E_ALL);
ini_set('display_errors', true);
flush();

$ftp_server = "myserver";
$ftp_user_name="myuser";
$ftp_user_pass="mypass";
$remote_file="myfile.txt";
$file="myfile.txt";

// set up a connection or die
$conn_id = ftp_connect($ftp_server) or die("Couldn't connect to $ftp_server"); 
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);


if (ftp_put($conn_id, $remote_file, $file, FTP_ASCII)) {
 echo "successfully uploaded $file\n";
} else {
 echo "There was a problem while uploading $file\n";
}

// close the connection
ftp_close($conn_id);
 ?>

Это дает мне предупреждение в браузере, как

Warning: ftp_put(): Access is denied. in /var/www/html/ftpcheck.php on line 17. There was a problem while uploading myfile.txt.

Я проверил права доступа к файлу. Но это доступно. Кто-нибудь может сказать мне, почему это происходит?

Ответы [ 3 ]

3 голосов
/ 01 ноября 2011

Скорее всего, это проблема с разрешениями.Когда вы загружаете файл через FTP, вам также необходимо проверить разрешение каталога.Когда вы говорите, что он доступен, это не значит, что он доступен для записи.

1 голос
/ 01 ноября 2011

Вы не проверяете результат операции входа в систему :

if (ftp_login($conn_id, $ftp_user_name, $ftp_user_pass)) {
    echo "Connected as $ftp_user_name@$ftp_server\n";
} else {
    echo "Couldn't connect as $ftp_user_name\n";
}

Вы также должны попробовать ручную операцию FTP с хоста PHP на хост FTP, чтобы убедиться, что выможете войти в систему с этими учетными данными и положить файл.Это поможет вам определить, является ли ваш код ошибочным или учетные данные FTP.

0 голосов
/ 10 декабря 2013
           <?php 
           class Ftp {
          function upload()
         {
           $ftp_server="50.56.113.39";
           $ftp_user_name="******";
           $ftp_user_pass="***";
           $file = "form.pdf";//tobe uploaded
           $remote_file = "uploads1/test.pdf";

        // set up basic connection
         $conn_id = ftp_connect($ftp_server);

         // login with username and password
         $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

         // upload a file
        if (ftp_put($conn_id, $remote_file, $file,  FTP_BINARY))
         {
          echo "successfully uploaded $file\n";
         //exit;
         } 
         else
           {
            echo "There was a problem while uploading $file\n";
            //exit;
            }
           // close the connection
         ftp_close($conn_id);

          }
            }
          ?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...