Как мне указать URL, по которому всегда будет загружаться последняя версия файла?

#file #url #redirect #versioning

#файл #URL #перенаправление #Управление версиями

Вопрос:

Я хочу указать URL-адрес, такой как «…mysite.com/my_installer.exe «, но я хочу, чтобы он указывал на последнюю версию моего установщика.

Итак, если я создам версию установщика 2, URL-адрес загрузится » …my_installer_v2.exe «.

Я просмотрел общее перенаправление URL-адресов — 301 перенаправление, .htaccess и т.д. — Но, похоже, они ориентированы на веб-страницы, мне не ясно, какие из них, если таковые имеются, были бы уместны, или мне следует подходить к этому по-другому.

Если это уместно, я нахожусь на сервере apache, используя CMS на основе PHP (Textpattern).

Ответ №1:

Должны ли люди иметь копию, которая «My_Installer_Latest.exe » который заменяется при выпуске новой версии. Поэтому просто укажите на этот и замените его, когда появится новая версия.

У вас есть и другие версии «My_Installer_V2.exe «, единственное отличие заключается в файле, который вы заменяете каждый раз при загрузке новой версии. Это очень просто сделать и надежно

Ответ №2:

Возможно, это не тот ответ, который вы ищете, но когда вы пишете URL, они должны иметь значение, поэтому, на мой взгляд, правильнее всего сделать, чтобы ваш URL был чем-то вроде mysite.com/last_version и затем вы можете перенаправить эту last_version на страницу php (в вашем случае), которая может выбрать правильную загрузку.

Я имею в виду, я предполагаю, что вы хотите сделать это «умным способом». Вы всегда можете просто заменять файл при каждом обновлении своего программного обеспечения.

Ответ №3:

Вы могли бы использовать mod_rewrite от Apache.

Если вы используете Apache, то, возможно, вы также размещены в системе unix и могли бы просто использовать символические ссылки: ln -fs my_installer_4496.exe my_installer.exe . При каждой загрузке меняйте символическую ссылку, чтобы она указывала на новый файл.

Ответ №4:

В системе unix вы могли бы начать с «…mysite.com/my_installer_v1.exe » в виде файла и была предоставлена ссылка » …mysite.com/my_installer.exe «указывает на этот файл версии 1. Таким образом, если версия 2 выходит на стадию или, возможно, ежедневной / ежевечерней сборки с меткой времени в качестве версии, у вас есть ссылка, обновленная в файловой системе, и вам не нужно изменять код интерфейса в CMS (html, предоставляемый клиенту).

Если необходимо разрешить доступ через Интернет к более старым или нестабильным параллельным версиям, вы всегда можете ссылаться на реальное имя файла в качестве атрибута href в a-элементе html. Если вам это нужно в командной строке, выполните команду типа ln -s my_installer_v1.exe my_installer.exe после перехода в каталог, содержащий файл (тот, который подается как «…mysite.com /» в вашем примере. Ссылка на html-странице будет выглядеть примерно <a href="/my_installer.exe">my_installer.exe (latest version)</a> .

PS: ln -fs my_installer_v2.exe my_installer.exe это будет (f означает принудительное) следующее обновление в вашем сценарии.