Обходной путь для отключенных функций php.ini --- - PullRequest
1 голос
/ 24 ноября 2008

Мы используем виртуальный хостинг, и следующие функции отключены.

file_uploads = Off
allow_url_fopen = Off
allow_url_include = Off

Мы не можем сменить хостинг и должны найти обходные пути. Хостинг co также не может / не хочет включать эти функции.

Например: Мы вызываем 1 сервер с другого, чтобы получить контент. Таким образом, мы выполняем включение, но поскольку включение URL-файла отключено, мы не уверены, какие варианты у нас есть, чтобы получить содержимое на этом втором сервере и сохранить его там с использованием какого-либо кэша.

Мы полностью контролируем контент-сервер, поэтому можем делать все необходимое, просто не зная, есть ли какое-то простое решение проблемы.

Ответы [ 4 ]

1 голос
/ 24 ноября 2008

Поскольку вы ищете для извлечения удаленного контента, самый простой способ будет написать функциональность для извлечения контента с помощью чего-то вроде curl ( php.net / curl )

0 голосов
/ 24 октября 2013

Вы можете решить свою проблему следующим образом

a) Создать механизм на выделенном сервере для извлечения любого файла (плюс некоторая аутентификация на основе ключа и ограничения на пути, из которых можно извлечь файлы)

Например: URL-адрес с именем get_file? Path = / path / to / file & key = security_key

б) Напишите функцию для извлечения, как будто из локального файла

function fetch_file($path) {
    $ch = curl_init("http://www.example.com/get_file?path=$path&key=security_key");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_BINARYTRANSFER, true);
    $output = curl_exec($ch);
    curl_close($ch);
    return $output;
}

Затем вы можете проверить возвращаемую строку, и это будет похоже на включение файла

eval fetch_file($path);

Еще одно решение для записи на сервер, если загрузка php-файла запрещена, - это загрузить ftp-файл на ваш сервер и включить его.

0 голосов
/ 24 ноября 2008

Зависит от того, насколько заблокирован сервер. Приведенные примеры (с использованием функций curl или fsockopen) не должны ограничиваться упомянутыми вами ограничениями.

0 голосов
/ 24 ноября 2008
...