Загрузка файла php через php с использованием подробностей ftp - это выполнение php, а не загрузка исходного файла php - PullRequest
0 голосов
/ 20 февраля 2012

Я пытаюсь загрузить файл PHP через php, используя подробности ftp, как указано ниже.

// retrieve name of the file to be uploaded
$source_file=$site_url."IMlobby/IMlobby".$_SESSION['zip_name']."/".$filename;

$fp = @fopen($source_file, 'r');

$destination_file=$filename;
//$upload = ftp_fput($conn_id, $destination_file, $fp, FTP_ASCII);
$upload = ftp_put($conn_id, $destination_file, $source_file, FTP_ASCII);

// check upload status
if(!$upload){
$errorMSG.="FTP upload has failed!" ;

Здесь проблема в том, что эти файлы содержат код PHP, который должен быть на удаленном сервере, но PHP получаетвыполняется, и то, что я получаю на удаленном сервере, это просто HTML.

Пожалуйста, помогите!

Ответы [ 2 ]

0 голосов
/ 20 февраля 2012

Если файл размещен локально, не открывайте файл по его URL. Вместо этого используйте его локальный путь.

Если вы не знаете, какой у вас локальный путь - используйте $ _SERVER ["DOCUMENT_ROOT"], чтобы узнать.

0 голосов
/ 20 февраля 2012

просто назовите файл с окончанием .phps (или лучше, переименуйте его автоматически перед загрузкой)

это большая дыра в безопасности, если вы разрешаете загрузку php-файлов, которые выполняются сервером. вы можете прочитать все файлы на сервере, которые доступны для чтения демону httpd.

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