2015-11-17 3 views
0

Я использую простой FOPEN заявление, чтобы прочитать текстовый файл, но я получаю:PHP-скрипт с Еореп выбрасывает 404 Not Found

Еореп (http://www.domain.nl/cees.txt): не удалось открыть поток: HTTP запрос не удалось ! HTTP/1.1 404 Not Found

Если я позвоню http://www.domain.nl/cees.txt в моем браузере, содержание отображается без каких-либо проблем, так что файл существует (правда?) ....

Я также попытался локон, но она также возвращает 404.

Если я пытаюсь мой PHP-скрипт на другом хосте, он работает просто отлично, так что я решил сравнить настройки для обоих узлов, но они идентичны с allow_url_fopen On в обоих случаев.

Там нет Htaccess и разрешения на RootFolder не 755.

Я потянув меня за волосы над этим. У кого-нибудь есть предложения?

+0

Вы пробовали использовать абсолютный путь? – Naruto

+2

a) domain.nl имеет защиту от скремблирования, которая запускается любым хостом, получающим 404. b) Прокси-сервер/шлюз между ними - это фильтрация. так ... у вас есть доступ к журналам domain.nl, чтобы узнать, что регистрируется как для хороших, так и для плохих запросов? –

+0

попробуйте использовать завиток и передать пользовательский агент –

ответ

0

Вот моя попытка:

Сервер, который не может достичь файл находится за прокси. Вы также можете быть за прокси, и ваш браузер настроен на то, чтобы пройти. Но не ваш php-скрипт.

Проверьте конфигурацию своего браузера, если он использует прокси-сервер. Если это так, то Еореп должен использовать его тоже:

$opts= array(
       'http' => array( 
       'proxy' => 'tcp://proxyip:8080', 
       'header' => array( 
            "Proxy-Authorization: Basic $auth" 
           ) 
       ) 
); 
$context = stream_context_create($opts); 
$file = fopen($url, 'r', false, $context) 
+0

Я не за прокси, и ни один из них не является сервером. Сервер - это мой собственный VPS. –

+0

Еще нет решения: www.aangenaamvoedzaam.nl/scripts/fopen.php throws 404, в то время как тот же скрипт на www.cornelisdigitaal.nl отлично работает. Оба сайта находятся на одном и том же VPS, имеют одинаковые настройки DNS и allow_url_fopen включен ... –

0

В момент ясности я решил проверить httpd.conf и обнаружил, что VirtualHost линия для указанного домена содержала IP4-адрес, но НЕ IP6-адрес.

Я добавил IP6-адрес, перезапустил Apache, и я счастлив маленьким кроликом !!!

Надеюсь, это поможет кому-то еще ...