WordPress: Download failed. A valid URL was not provided.

WordPress: Download failed. A valid URL was not provided.Привет,

На работата, колегите програмисти използват dev сървъри за тестове на wordpress плъгини, темплейти и локални repository-та, чрез които ги обновяват.

С течение на времето, се сблъскахме с много странен проблем – при опит за обновяване на plugin/theme даваше следната грешка : WordPress: Download failed. A valid URL was not provided.

Downloading install package from http://dev-server.root.bg/path/download…
Download failed. A valid URL was not provided.

Оказа се, че в wordpress след версия 3.6 има заложена защита спрямо локалните мрежи, и всичко от рода на 192.168.0.0/16 , 10.0.0.0/16 , 127.0.0.1 или 172.16.0.0/16 бива отрязано от самия WP.

Проблема се оправя, като се добавят следните редове най-долу във wp-config.php :

add_filter( 'http_request_host_is_external', 'allow_my_custom_host', 10, 3 );
function allow_my_custom_host( $allow, $host, $url ) {
if ( $host == 'dev-server.root.bg' )
$allow = true;
return $allow;
}

Забележка : задължително тези редове трябва да са след :

/** Absolute path to the WordPress directory. */
if ( !defined('ABSPATH') )
define('ABSPATH', dirname(__FILE__) . '/');

Това е! =)

 

Благодаря на Emanuele Tessore за линк-а.