На localhost файл загружает правильно с ftp, но не в сервере Ubuntu

На localhost Я пытался получить файл ftp от сервера, и локальный файл успешно создается. Но когда я пробую в сервере Ubuntu, он отображается была проблема, и файл не загружает в сервер. Вот код. И файл кода создается в этом месте /var/www/html/:

<?php
// define some variables
$local_file = 'local.csv';
$server_file = 'serverfile.csv';
$ftp_server="ip address";
$conn_id = ftp_connect($ftp_server)or die("Couldn't connect to $ftp_server");
$ftp_user_name="user anme";
$ftp_user_pass="pass";
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
if (ftp_get($conn_id, $local_file, $server_file, FTP_BINARY)) {
echo "Successfully written to $local_file\n";
}
} else {
echo "There was a problem\n";
}
ftp_close($conn_id);
?>

Помогите мне решить эту проблему, в локальном хосте она хорошо работает, но в сервере Ubuntu локальный файл, не создающий/загружающий.

-1
задан 22 July 2016 в 16:46

2 ответа

Это, кажется, проблема разрешения. Каталог /var/www/html, скорее всего, принадлежит root:

mirek@testsrv-ubuntu:/var/www/html$ ls -al
total 24
drwxr-xr-x  3 root  root   4096 dec 23  2015 .
drwxr-xr-x  3 root  root   4096 dec 22  2015 ..
-rw-r--r--  1 root  root  11510 dec 22  2015 index.html

пользователю, выполняющему PHP, нужно разрешить записать в том каталоге. Если PHP выполняется Apache, необходимо позволить пользователю www-data писать. Следующая команда перечислит рабочие процессы Apache. Имя пользователя является первым столбцом.

mirek@testsrv-ubuntu:/var/www/html$ ps -ef | grep apache
root      1605     1  0 jul20 ?       00:00:16 /usr/sbin/apache2 -k start
www-data  1963  1605  0 12:01 ?        00:00:04 /usr/sbin/apache2 -k start

С тех пор root позволяется записать где угодно, можно просто изменить владельца /var/www/html, каталог к www-data и и root и www-data сможет записать там.

sudo chown www-data:www-data /var/www/html
[еще 1118] информация о полномочиях файла и владельцах:

0
ответ дан 28 September 2019 в 22:34

ftp_pasv ($conn_id, верный); решение для моего выпуска

0
ответ дан 28 September 2019 в 22:34

Другие вопросы по тегам:

Похожие вопросы: