![XMLReader выдает тайм-аут при открытии внешнего XML](https://rvso.com/image/632733/XMLReader%20%D0%B2%D1%8B%D0%B4%D0%B0%D0%B5%D1%82%20%D1%82%D0%B0%D0%B9%D0%BC-%D0%B0%D1%83%D1%82%20%D0%BF%D1%80%D0%B8%20%D0%BE%D1%82%D0%BA%D1%80%D1%8B%D1%82%D0%B8%D0%B8%20%D0%B2%D0%BD%D0%B5%D1%88%D0%BD%D0%B5%D0%B3%D0%BE%20XML.png)
У меня возникает тайм-аут при попытке открыть внешний XML-файл (который существует, я вижу его в браузере при размещении прямой ссылки).
Я уверен, что XMLReader установлен и включен, и он работает, если вызывает локальный XML (проверено и работает, как и ожидалось).
Но при попытке получить тот же XML из внешнего источника (другого домена) я получаю это (домены и IP-адреса здесь замаскированы):
[Mon May 12 20:03:44 2014] [error] [client xxxxxx] PHP Warning: XMLReader::open(http://myotherdomain/data.xml): failed to open stream: Connection timed out in /var/www/html/mysite/xmlreader.php on line 29
[Mon May 12 20:03:44 2014] [error] [client xxxxxx] PHP Warning: XMLReader::open(): Unable to open source data in /var/www/html/mysite/xmlreader.php on line 29
Строка 29 относится к open()
:
if (!$reader->open("http://myotherdomain/data.xml"))
Мой сервер — CentOS 6.5, Apache 2.2.15, PHP 5.4.25
Что здесь не так? Почему я получаю тайм-аут?(это происходит с каждым внешним XML, который я пробовал)
решение1
Я нашел проблему, она была связана с портом 80 брандмауэра…
Он не разрешал соединения сервера с внешним миром, так что это не имело отношения к XMLReader, а было еще одной проблемой, связанной с брандмауэром.