Parse_url не работает правильно на промежуточном сервере
Я столкнулся с проблемой с функцией parse_url. если я использую parse_url в моей локальной системе, я получаю следующий вывод. URL для разбора используется: www.youtube.com/embed/u-j1nx_HY5o
Array
(
[host] => www.youtube.com
[path] => /embed/u-j1nx_HY5o
)
Но я разбираю тот же URL при постановке, я получил следующий вывод.
Array(
[path] => //www.youtube.com/embed/u-j1nx_HY5o
)
то есть. Я не получаю имя хоста на промежуточном сервере.
Примечание. Версия PHP на промежуточном сервере - 5.3.3. Может кто-нибудь, дайте мне знать, почему это происходит.
Большое спасибо,
М.
1 ответ
Была ошибка до 5.4.7: 5.4.7 Fixed host recognition when scheme is omitted and a leading component separator is present.
Убедитесь, что версия вашего промежуточного сервера ниже 5.4.7.
В качестве дополнительного совета: всегда используйте одну и ту же версию и конфигурацию (кроме параметров отчетов об ошибках) во всех ваших средах.
РЕДАКТИРОВАТЬ
Если вы не можете обновить промежуточную среду, добавление схемы к URL-адресу (например, http://) может помочь. Также понизьте вашу среду разработки до версии, работающей в промежуточной и производственной среде.