Gaargot писал(а): ↑23.01.2010 06:24
KiWi писал(а): ↑23.01.2010 00:44
В HTTP нет относительных путей -- это раз.
http://en.wikipedia.org/wiki/HTTP_404 -- это два. Раз говорится, что нет -- то выясняйте почему нет. Либо сами не можете набрать адрес своего же сайта, либо PHP ищет сайт где-то по другому адресу -- VirtualHost'ы криво настроены, DNS'ы закешировались и т.д. и т.п. Стоит начинать с access_log'ов сервера, а дальше -- tcpdump и так далее. Стандартный процесс деббагинга. Очень может помочь банальный wget -- при правильно подходе он покажет и запросы, и ответы, и куда они уходят.
Орать что "не работает" и "что исправить в PHP" стоит только после нормальной проверки, что оно действительно не работает. И не какого-то гавёного "http://сайт/forum/123.php", про который неизвестно -- существует ли он или это какой-то местный самопал, а с достоверно нормально настроенных и работоспособных
http://ya.ru,
http://google.com и т.п.
Делать include нелокальных адресов -- плохо, ещё более плохо -- делать include адресов, к которым есть локальный доступ. Если приспичит, то для этих целей есть специальные инструменты, тот же curl -- это четыре.
Ну вот! Большое спасибо, возможно виртуал хосты, да. Достаточно развернутый ответ, хотя и хамоватый. И извините, не хотел довести вас до истерики!!! :-) Вообще я не просил перевода, а задал вопрос с просьбой разобраться - почему урл не найден, вы были не очень внимательны. Просто попросил помочь, хотя и не обязательно вас. Еще раз, спасибо.
Что подкрутить в PHP, чтобы заработал include http:// -- ровно тот первоначальный вопрос, точнее отсутствие вопроса как такового. Ответ: ничего, PHP работает так, как и должен.
Почему при запросе из скрипта выдаётся ошибка 404 -- вот здесь да, можно подумать. Но, согласитесь, эти два вопроса координально отличаются. Да и для проверки второго не было сделано ровно НИ-ЧЕ-ГО, так что сама проблема не была осознана. Собственно, как и возможные причины её возникновения, так что сейчас сваливать всё на некую "невнимательность" отвечающего не стоит -- не катит отмаза. А нормальный ход мыслей нормально человека:
Адрес не найден. Почему? Из-за скрипта, или из-за сервера. Далее следует попытка запуска скрипта на своём домашнем компе. Далее -- либо ковыряния скрипта(если и на домашнем компе будет так же) на предмет фильтраций, либо ковыряния сервера(если скрипт на домашнем компе заработает) -- попытка скачать файл с самого сервера, посмотреть оттуда ли скачивает(если не оттуда, то почему), если оттуда, то почему 404 и чем различаются запросы с домашнего компьютера и с сервера.
Кстати, сам скрипт может выдавать 404 Not Found, если запрос идёт от "левого" браузера. А ещё -- скрипт может абсолютно всем выдавать 404 Not Found вместе с нормальной страницей под видом страницы с ошибкой. А ещё -- 404 может вываливаться, если отсутствуют определённые cookie, а ещё... Есть тысяча вариантов.
А я совершенно спокоен -- пара лет общения с людьми просто так не проходит. Просто в одном случае человеку можно открыто сказать, что он дебил, в другом -- намекнуть, что он дебил, а за дебилизм стоит платить денюжку.