Полезный php код для загрузки файлов на сервер
Уже несколько раз мне приходилось вручную по ftp заливать такую вот сборку: WordPress, BuddyPress, несколько шаблонов и кучу плагинов. Естественно, что по одному файлу все это счастье будет длиться около получаса и не из-за объема передаваемых килобайт, а из-за количества файлов – их тысячи.
Поэтому я пользуюсь другим методом скоростной загрузки – нет, не контрольная панель. Что вы делаете:
- заходите в папку вашего локального сайта – туда, где лежит файл wp-config.php;
- делаете обычный zip архив всех файлов папок, которые видите (назовите его data.zip); то есть в архиве будут папка wp-admin/, wp-content/ и так далее по структуре;
- создайте файл unzip.php, внутрь него пропишите вот это:
<?php system('unzip data.zip'); ?>
- заливаете архив data.zip и файл unzip.php в папку, в которой вы планируете расположить WordPress. Согласитесь, 10 мегабайт одним файлом передается в разы быстрее, чем 20 мегабайт отдельными файлами;
- запускаете в браузере php файл, прописав его в адресной строке: http://example.org/unzip.php
- все, вы увидите огромный список всех распакованных файлов.
После этого просто удалите архив, файл unzip.php и зайдите по основному пути http://example.org/.
Лично мне этот трюк сэкономил кучу нервов и времени.
У меня похожий способ. Я использую для этого mywebftp ))
А за этот спасибо, не знал.
если у вас доступен shell, тогда можно воспользоваться для заливки файлов программой WinSCP . Заливка идет намного быстрей, чем по FTP, тк в отличии от FTP используется одно соединение, а не как у FTP по соединению на каждый файл
существует плагин для Far от этой проги. Выглядит примерно так же как использование FTP
Я в повседневной жизни использую WinSCP – но передавать данные через shell – как-то не додумался :) мне хватало этого моего способа.
SFTP и SCP
Кстати если нужно наоборот заархивировать и скачать, то можно поступить подобным образом, только, немного изменив код в файле:
Где:
data.zip – это файл архива, куда будут сохранены ваши данные
dir – имя каталога который архивируется (* – если хотите запаковать весь корневой каталог)
Если есть возможность поставить на сервере subversion,
то лучше пользоваться им. Такой способ на мой взгляд самый верный.
Зачем subversion в случае, когда вы переносите свой локальный сайт на сервер? Subversion только для разработок нужен – и все. Если его просто так ставить – то его файлы кучу места заниматься будут, как минимум в 1.5 – 2 раза больше, чем файлы самого проекта.
Если потом в локальную версию будут вноситься правки, то с помощью svn их гораздо проще выкладывать на сервер.
Ну а если над проектом работают несколько человек, то тут без svn никак. Плюс это еще один бэкап всех версий кода.
А чтобы много места само хранилище не занимало, то надо просто исключать из него папки, где хранится графика и прочие “тяжелые” файлы. Сам php-код, js, css занимает какие-то мегабайты.
Ну а если обновления в код вносятся редко, то наверное смысла в svn будет мало.
“Сам php-код, js, css занимает какие-то мегабайты.” – прям таки МЕГАБАЙТЫ )))))
Папка с последним вордпрессом весит ~12Мб.