Я бы хотел разрешить только ссылки https: //, которые будут использоваться как удаленные изображения аватара в phpbb, чтобы избежать смешанного содержимого. Это, кажется, код, который используется для проверки, правильно ли введен URL (чтобы найти в /phpbb/avatar/driver/remote.php):preg_match разрешить только https: // в URL-адресе
if (!preg_match('#^(http|https|ftp)://(?:(.*?\.)*?[a-z0-9\-]+?\.[a-z]{2,4}|(?:\d{1,3}\.){3,5}\d{1,3}):?([0-9]*?).*?\.('. implode('|', $this->allowed_extensions) . ')$#i', $url))
{
$error[] = 'AVATAR_URL_INVALID';
return false;
}
я хотел бы добавить, если { } - условие перед этим кодовым блоком, чтобы дать информативное сообщение об ошибке, если пользователь выбрал изображение с незащищенного сервера. Может ли кто-нибудь помочь мне определить правильную строку preg_match(), пожалуйста?
использование parse_url .. –