Мой веб-сайт запрашивает у пользователя номер телефона в качестве логина, позволяет ему выбрать название своей команды, а затем свою игру. Как только мы пытаемся загрузить картинки, я просто ничего не загружаю, и мне нужно перезапустить apache, чтобы повторить попытку.
Но даже без перезагрузки, если я делаю это из своей сети, у меня никогда не возникает никаких проблем. Я открыл порт 9999 через порт 80 через брандмауэр.
Если я поставлю сервер на DMZ. Я могу пройти дальше. Это означает, что следующая страница загружается, и я получаю ту же ошибку, указанную ниже для каждого изображения, которое должно было быть загружено. Так что, не уверен, что это срабатывает порт.
Единственная ошибка, которая появляется в журнале apache:
[Mon Sep 15 13:43:58 2014] [error] [client 64.138.248.65] PHP Warning: getimagesize(http://example.com:9999/Events/01/439/009/Preview/1156nr_140807_439_009_0014.jpg): failed to open stream: Connection timed out in /www/gf/customer/favorites.php on line 48, referer: http://example.com:9999/customer/teams
Так что, похоже, это как-то связано с брандмауэром. Но не уверен, что еще делать.
Ваш вызов метода для getimagesize использует HTTP-URL в качестве входных данных. Это означает, что вы пытаетесь пройти через Интернет для загрузки изображения вместо локальной файловой системы.
Как только вы введете правильный путь в исходный код, который указывает на изображение в локальной файловой системе, а не через Интернет, это решит вашу проблему.
Причина действительно в сети. Вероятно, он не может перебрать Интернет для себя, чтобы загрузить изображение, которое вы закодировали как URL-адрес HTTP.
Других решений пока нет …