Проблемы при загрузке полной установки Magento через чисто FTP на общем сервере
В настоящее время я пытаюсь загрузить полную версию magneto с ftp-сервера. Не удается установить соединение, кажется, что слишком много файлов и папок для сканирования?
Может кто-нибудь пролить свет на то, как решить эту проблему? Общая платформа, кажется, является стандартной платформой на основе Plesk 8.6.
Поскольку это общий сервер, я не могу ничего сделать, кроме как связаться с хостинговой компанией (которая предложила мне заархивировать все файлы, но это не идеально)
2 ответа
У вас есть доступ по SSH? Вы можете сделать рекурсивный SCP или, возможно, направить поток tar/gzip по защищенному каналу. Таким образом вы избежите таймаутов FTP.
Если у вас нет доступа по SSH, то это должно сработать,
С http://www.sonassi.com/knowledge-base/migrate-a-magento-store-without-ssh-access/
Просто создайте сценарий PHP на исходном и конечном серверах, как показано ниже, и замените исходные переменные, если необходимо.
Для резервного копирования
<?php
$db_host = "";
$db_name = "";
$db_username = "";
$db_password = "";
// Backup database
shell_exec("/usr/bin/mysqldump -h ".$db_host." -u ".$db_username." -p".$db_password." > ".$db_name.".sql &");
// Backup entire site
shell_exec("/usr/bin/tar cfz ".$_SERVER['HTTP_HOST'].".tar.gz
--exclude=./".$_SERVER['HTTP_HOST'].".tar.gz
--exclude=./var/session".$_SERVER['HTTP_HOST']."
--exclude=./var/cache".$_SERVER['HTTP_HOST']."
".$_SERVER['DOCUMENT_ROOT']." &");
?>
Восстановить
<?php
$db_host = "";
$db_name = "";
$db_username = "";
$db_password = "";
// Only set these if you are changing your domain name
$old_domain = "";
$new_domain = "";
// Restore entire site
shell_exec("/usr/bin/tar xfz ".$_SERVER['HTTP_HOST'].".tar.gz
".$_SERVER['DOCUMENT_ROOT']);
if (!empty($old_domain) && !empty($new_domain)) {
$sql = &file_get_contents($db_name.".sql");
file_put_contents($db_name.".sql.bak",$sql);
$sql = str_replace($old_domain,$new_domain,$sql)
file_put_contents($db_name.".sql",$sql);
}
// Restore database
shell_exec("/usr/bin/mysql -h ".$db_host." -u ".$db_username." -p".$db_password." < ".$db_name.".sql &");
$xml = simplexml_load_file($_SERVER['DOCUMENT_ROOT']."app/etc/local.xml");
$xml->global->resources->default_setup->connection->host = $db_host;
$xml->global->resources->default_setup->connection->dbname = $db_name;
$xml->global->resources->default_setup->connection->username = $db_username;
$xml->global->resources->default_setup->connection->password = $db_password;
$xml->asXML($_SERVER['DOCUMENT_ROOT']."app/etc/local.xml");
// Disable cache
@unlink($_SERVER['DOCUMENT_ROOT']."app/etc/use_cache.ser");
@unlink($_SERVER['DOCUMENT_ROOT']."downloader/pear/pear.ini");
?>