В настоящее время популярно здание виртуального хостинга. У меня также есть веб -сайт, и я также веб -мастер. После почти года работы я чувствую, что каждый раз, когда программа веб -сайта обновляется, я сначала захожу на официальный веб -сайт, чтобы прочитать объявление, а затем загружать пакет обновления в локальный район, декомпрессировать и загружать FTP на виртуальный хост. Это все утомительные физические задачи, и мне ленивое, чтобы быть очень ленивым, поэтому я фантастический и подумал, что было бы здорово, если бы программа могла бы автоматически обновляться. Поэтому я подумал об этом и написал эту статью, надеясь, что она будет полезно для разработчиков веб -программы. Это только для ASP, потому что я знаю только ASP :-(
Давайте сначала рассмотрим процесс обновления традиционных программ Win32 (таких как антивирусное программное обеспечение). Он полагается на программу обновления программного обеспечения для подключения к серверу через сеть для анализа и загрузки файла обновления в локальную область.
Веб -программа немного отличается, потому что она работает на веб -сервере. В конечном итоге ему необходимо перезаписать файлы на сервере обновления на веб -сервер, а компьютер веб -мастера - это просто передача. Если вы напрямую копируете файлы на сервере обновления на веб -сервер (без прохождения через веб -мастер), будет достигнуто автоматическое обновление.
К счастью, система поставляется с компонентом Microsoft.xmlhttp для доступа к Интернету. Его можно вызвать в ASP, чтобы подключиться к серверу обновления для загрузки файла обновления.
Следующий код является примером загрузки файла с использованием microsoft.xmlhttp:
<%
SetXpost = createObject ("microsoft.xmlhttp")
xpost.open "Get", "http://www.0x54.org/test.exe", false
xpost.send ()
SetSget = createObject ("adodb.stream")
sget.mode = 3
sget.type = 1
sget.open ()
sget.write (xpost.responsebody)
sget.savetofileserver.mappath ("update.exe"), 2
setsget = ничего
SetSpost = ничего
response.write ("Успешно скачать файл! <br>")
%>
Приведенный выше код состоит в том, чтобы сохранить http://www.0x54.org/test.exe в текущий каталог веб -сервера. Что касается большего использования Microsoft.xmlhttp, пожалуйста, проверьте MSDN.
Если есть много файлов, Microsoft.xmlhttp будет вызвать несколько раз для подключения к сети, и некоторые файлы могут не обновить в определенном соединении. Чтобы избежать этого, лучше всего упаковывать все файлы в один файл и загружать его в Интернет один раз, прежде чем распаковать его.
Ха -ха, упомянутая здесь упаковка не является RAR или ZIP -пакетом, но мы определяем ее сами. Например, сплайсируйте все файлы на один, а затем разделяйте их в соответствии со специальными оценками. Сейчас это не так хлопотно, потому что есть готовый метод. Мы используем метод его использования: поместите все файлы (двоичная форма) и их информацию о пути в базу данных Access.
Следующий файл VBS (из Ocean Top 2006Plus) предназначен для упаковки всех файлов в текущем каталоге:
Dimn, ws, fsox, thepath
Setws = createObject ("wscript.shell")
Setfsox = createObject ("scripting.filesystemobject")
ThePath = Ws.Exec ("cmd/ccd"). stdout.readall () & "/"
i = instr (ThePath, Chr (13))
ThePath = слева (ThePath, I-1)
n = len (Thepath)
OnerRorResumenext
addtomdb (Thepath)
Wscript.echo "Текущий каталог был упакован, корневый каталог - текущий каталог"