Поддержка Проблемы и решения Warning: Произошла непредвиденная ошибка.

  • Warning: Произошла непредвиденная ошибка. Возможно, что-то не так с сайтом WordPress.org или с настройками вашего сервера. Если проблема не решится, обратитесь на форумы поддержки. (Не удалось установить защищённое соединение с WordPress.org. Пожалуйста, свяжитесь с администратором сервера.) in /home/…./wp-includes/update.php on line 295

    If you beleive that this error is due to the server configuration problems please contact your local web-hosting support team.

    постоянно возникает эта ошибка. в чем может быть проблема?

Просмотр 9 ответов — с 1 по 9 (всего 9)
  • А это локально? У меня вот тоже бывает, интересно почему..

    нет на хостинге

    Модератор Yui

    (@fierevere)

    永子

    убедитесь что у вас достаточно свежая версия PHP, библиотек openssl, включены расширения curl или разрешены функции fsockopen, fopen для url и включено расширение openssl

    также хостинг (если у вас локальный сервер — фаерволл) должны разрешать исходящие соединения на американские IP

    Точно, возможно этих библиотек не хватает. Спасибо большое за мысль.

    Модератор Yui

    (@fierevere)

    永子

    они могут быть, но старой версии, если хостинг — centos старый,
    если вендовый локал хостинг — кто ж знает что там….

    за последний год произошло много интересного, если не брать heartbleed, то 2 события существенно ограничили подключаемость старых клиентов по HTTPS

    1. плановое устаревание SHA-1 подписей, замена сертификатов на SHA-256 и выше, это убирает яву 1.6 и MSIE старых версий

    2. POODLE и как следствие отключение SSLv3 , тут могут быть задеты даже старые версии curl

    еще стоит посмотреть чтобы был свежий WordPress, с соответственно свежим свертком CA сертификатов ( у него свои )

    Я нашла интересную вещь, чтобы поставить сервер и WordPress локально автоматически, со всеми настройками — Vagrant

    Добавьте к functions.php

    function increase_timeout_for_api_requests_27091( $r, $url ) {
    	if ( false !== strpos( $url, '//api.wordpress.org/' ) ) {
    		$r['timeout'] = 30;
    	}
    
    	return $r;
    }
    add_filter( 'http_request_args', 'increase_timeout_for_api_requests_27091', 10, 2 );

    У меня решилась проблема после этого.

    что делает этот код?

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    что делает этот код?

    Увеличивает промежуток времени для соединения с api.wordpress.org. Но этот вариант поможет не во всех случаях.

    Суть проблемы в том, что некоторые сервера не могут соединиться с WordPress.org. Наиболее распространённые причины:

    • Запрещены внешние соединения.
    • Не работает SSL или cURL.

    Если предыдущая проверка обновлений плагинов и тем не завершилась успешно, то в WordPress 4.0 она повторяется только через 12 часов, а в WordPress 4.1 — снова и снова (см. подробности в багтрекере). Думаю, будет исправлено в 4.1.1.

    В качестве временного решения можно добавить фрагмент в functions.php активной темы (или установить его же в виде плагина):

    function override_updated_plugins_check_31011( $transient ) {
    	$plugins = get_plugins();
    
    	// Reset the timeout if previous requests never succeeded
    	if ( ! isset( $transient->checked ) ) {
    		$last_update->last_checked = time();
    	}
    
    	// Short-circuit the check for changed plugins
    	foreach ( $plugins as $file => $plugin ) {
    		if ( ! isset( $transient->checked[ $file ] ) ) {
    			$transient->checked[ $file ] = $plugin['Version'];
    		}
    	}
    
    	return $transient;
    }
    add_filter( 'site_transient_update_plugins', 'override_updated_plugins_check_31011' );
    
    function override_updated_themes_check_31011( $transient ) {
    	$themes = wp_get_themes();
    
    	// Reset the timeout if previous requests never succeeded
    	if ( ! isset( $transient->checked ) ) {
    		$last_update->last_checked = time();
    	}
    
    	// Short-circuit the check for changed themes
    	foreach ( $themes as $theme ) {
    		$stylesheet = $theme->get_stylesheet();
    		if ( ! isset( $transient->checked[ $stylesheet ] ) ) {
    			$transient->checked[ $stylesheet ] = $theme->get( 'Version' );
    		}
    	}
    
    	return $transient;
    }
    add_filter( 'site_transient_update_themes', 'override_updated_themes_check_31011' );
Просмотр 9 ответов — с 1 по 9 (всего 9)
  • Тема «Warning: Произошла непредвиденная ошибка.» закрыта для новых ответов.