ErrorException (E_UNKNOWN) fgets (): истекло время операции чтения SSL
156. * @return string
157. *
158. * @throws Swift_IoException
159. */
160. public function readLine($sequence)
161. {
162. if (isset($this->_out) && !feof($this->_out)) {
163. $line = fgets($this->_out);
164. if (strlen($line) == 0) {
165. $metas = stream_get_meta_data($this->_out);
Эта ошибка относится к SendGrid. Мои настройки Laravel по умолчанию:
laravel>app>config>mail.php
<?php
array(
'driver' => 'smtp',
'port' => 465,
'encryption' => 'ssl',
'sendmail' => '/usr/sbin/sendmail -bs',
)
Как это решить?
(смотрите также: Laravel.io)
Я нашел решение, но это не лучший способ. Для тестирования это нормально 🙂
Когда я загружаю свое приложение в облако, я получаю сообщение об ошибке.
На домене я отключил SSL. В laravel>app>config>mail.php
Я изменил это:
<?php
array(
'driver' => 'smtp',
'port' => 25, //earlier: 465
'encryption' => '', //earlier: 'ssl'
//other settings
)
Вероятно, это ошибка в PHP 5.4.33 / 5.5.17 (ссылка на сайт). Вы должны перейти на версию 5.4.32. Тогда это должно работать.
yum downgrade $(rpm -qa --qf "%{NAME}\n" | grep ^php | awk '{print $1"-5.4.32"}') -y
Смотрите также laravel.io.
Решение 3 действительно простое, отключите все SSL в домене.
Теперь, когда доступно обновление, другим решением было бы обновить PHP до v5.5.18:
sudo apt-get update
sudo apt-get dist-upgrade
Надеюсь это поможет.