
    Новые сообщения [новые:0]
  
  Дайджест 
  
  Горячие темы
    Избранное [новые:0]
  
Форумы 
 
Пользователи 
Статистика 
Статистика нагрузки 
    Мод. лог 
  
  Поиск 
| 
 | 
| 04.05.2018, 10:32 | |||
|---|---|---|---|
| 
 | |||
| nginx с модулем upload и повреждение файлов | |||
| #18+ Всем привет. Есть приложение (написано на delphi), которое загружает исполняемые файлы на сервер. На сервере стоит nginx с модулем upload.  Загружаю exe-шник на сервер, все проходит нормально, а когда скачиваю и пытаюсь запустить вываливается ошибка о совместимости 32 и 64 разрядности ОС. Хотя до всех этих манипуляций exe-шник нормально запускается. Пробовал загружать другие файлы c jpg и pdf всё нормально после скачивания они открываются, а вот png не хочет: говорит, что файл поврежден или размер слишком большой (хотя файл 43 кб) и не открывается ни в одном редакторе. Для exe использовал mime-type application/octet-stream и application/x-msdownload. Вот кусок кода, который заливает файл на сервер: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Что я делаю не так? ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 04.05.2018, 17:20 | |||
|---|---|---|---|
| 
 | |||
| nginx с модулем upload и повреждение файлов | |||
| #18+ Я бы начал с проверки места повреждения: при закачивании или при скачивании.  Проще всего сравнить контрольные суммы, на windows-клиенте запускать команду certutil -hashfile "file", на сервере после загрузки sha1sum "file". Если цифры не совпадают, то файл повреждается при передаче на сервер. И тогда надо смотреть чего это за модуль upload, в официальном nginx такого нет ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 04.05.2018, 17:38 | |||
|---|---|---|---|
| 
 | |||
| nginx с модулем upload и повреждение файлов | |||
| #18+ МутагенИ тогда надо смотреть чего это за модуль upload, в официальном  nginx такого нет  Коммерческая версия -  достаточно официальна ? ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 04.05.2018, 18:18 | |||
|---|---|---|---|
| 
 | |||
| nginx с модулем upload и повреждение файлов | |||
| #18+ Sh2kerr, для начала сравните, чем отличается файл, который загружаете, от файла, который загрузился. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 07.05.2018, 05:58 | |||
|---|---|---|---|
| 
 | |||
| nginx с модулем upload и повреждение файлов | |||
| #18+ Мутаген, спасибо за совет. Суммы не сошлись, точнее они выводятся как-будто в разных форматах. Считал sha1 и md5. Для SHA1 результат такой: Win: 91 40 b7 d4 90 e3 15 fe 4b 27 f8 8c a7 34 e9 2e 1d 78 13 cb linux: 40f792c5640fa4b12b6c800863fad04aa5cf244c REGP.exe Проблема в другом. Открыл exe-шник в блокноте а там вот такая ерунда: ----------050418140748703 Content-Disposition: form-data; name="sfile"; filename="REGP.exe" Content-Type: application/x-msdownload Content-Transfer-Encoding: binary MZP C MZP начинается сам exe-файл. Получается при загрузке http-заголовок записывается в exe-файл. Стёр этот заголовок до MZP, сохранил и всё заработало. Надо придумать как это исправить на nginx-e. Всем большое спасибо за ответы! ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 07.05.2018, 06:09 | |||
|---|---|---|---|
| 
 | |||
| nginx с модулем upload и повреждение файлов | |||
| #18+ З.Ы. Оказывается nginx добавляет такую хрень во все файлы, просто pdf и jpg более устойчивы поэтому нормально открывались, а вот png и exe возмущаются. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 07.05.2018, 12:54 | |||
|---|---|---|---|
| 
 | |||
| nginx с модулем upload и повреждение файлов | |||
| #18+ Sh2kerrНадо придумать как это исправить на nginx-e. Это не HTTP заголовок, это MIME-multipart. И исправлять это надо не на nginx-е, а в твоём кривом дельфийском приложении, у которого Context-type не соответствует реальному содержимому. Posted via ActualForum NNTP Server 1.5 ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 07.05.2018, 13:13 | |||
|---|---|---|---|
| 
 | |||
| nginx с модулем upload и повреждение файлов | |||
| #18+ Dimitry Sibiryakov, и какой же должен быть тип? Почему nginx запихивает всё это в файл? ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 07.05.2018, 13:37 | |||
|---|---|---|---|
| 
 | |||
| nginx с модулем upload и повреждение файлов | |||
| #18+ Sh2kerrи какой же должен быть тип? Правильный. Соответствующий ожиданиям upload модуля и RFC. Лично я бы вообще выкинул multipart дребедень и отсылал чистый octets-stream. Sh2kerrПочему nginx запихивает всё это в файл? Потом что твоё приложение командует ему "запихни в файл всё, что я пришлю". А присылает вот такую вот фигню. Posted via ActualForum NNTP Server 1.5 ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 07.05.2018, 13:44 | |||
|---|---|---|---|
| 
 | |||
| nginx с модулем upload и повреждение файлов | |||
| #18+ Dimitry Sibiryakov, убирал, всё равно пишет в файл эту фигню. Пробовал отправлять html-формой тоже самое. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 07.05.2018, 13:52 | |||
|---|---|---|---|
| 
 | |||
| nginx с модулем upload и повреждение файлов | |||
| #18+ Так перестань программировать методом случайного тыка и начни читать документацию, включая  RFC. Posted via ActualForum NNTP Server 1.5 ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 08.05.2018, 04:35 | |||
|---|---|---|---|
| 
 | |||
| nginx с модулем upload и повреждение файлов | |||
| #18+ Dimitry Sibiryakov, при чем тогда "кривой дельфийский код"? я же написал, что с html-формой тоже самое. По вежлевее нельзя? ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 08.05.2018, 12:05 | |||
|---|---|---|---|
| 
 | |||
| nginx с модулем upload и повреждение файлов | |||
| #18+ Sh2kerrпри чем тогда "кривой дельфийский код"? я же написал, что с html-формой тоже самое. При том, что именно показанный дельфийский код отправляет данные. Зачем в нём использован multipart, которого upload, возможно, не понимает - вопрос из вопросов. Html-код ты показать "забыл". Вероятнее всего, там тоже копи-паст с гугля, не соответствующий требованиям. Posted via ActualForum NNTP Server 1.5 ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 08.05.2018, 12:21 | |||
|---|---|---|---|
| 
 | |||
| nginx с модулем upload и повреждение файлов | |||
| #18+ Sh2kerrПо вежлевее нельзя? "По вежлевее" это за тебя прочитать документацию по используемому тобой продукту, напрячь телепатер и угадать где ты облажался? Ок, вежливо отвечаю: ты пытаешься использовать промежуточные файлы nginx, вместо того, чтобы, как положено, передать их на backend, который их должен обработать и сложить в правильном формате в правильное место. Да, промежуточные файлы содержат оригинальные файлы с обёрткой транспортного протокола. Более того, там может присутствовать сжатие и кодирование bаse64 или даже quoted-printable. Posted via ActualForum NNTP Server 1.5 ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 08.05.2018, 16:31 | |||
|---|---|---|---|
| 
 | |||
| nginx с модулем upload и повреждение файлов | |||
| #18+ Basil A. SidorovМутагенИ тогда надо смотреть чего это за модуль upload, в официальном  nginx такого нет  Коммерческая версия -  достаточно официальна ? Модули из коммерческой версии в том же списке, например ngx_stream_keyval_module . А в вики лежать может что угодно ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 08.05.2018, 16:57 | |||
|---|---|---|---|
| 
 | |||
| nginx с модулем upload и повреждение файлов | |||
| #18+ Мутаген...Поскипано нахрен ... Вы правда думаете, что NGINX, Inc. это такая левая компашка, которая чисто по кибесквоттерски зарегала похожий, но отдельный домен? Или, всё-таки, сумеете оценить разницу между NGINX и NGINX Plus ? ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 08.05.2018, 18:14 | |||
|---|---|---|---|
| 
 | |||
| nginx с модулем upload и повреждение файлов | |||
| #18+ [quot Sh2kerr] Код: pascal 1. Замена здесь слова Put на Post скорее всего исправит ситуацию ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 08.05.2018, 18:22 | |||
|---|---|---|---|
| 
 | |||
| nginx с модулем upload и повреждение файлов | |||
| #18+ Basil A. SidorovВы правда думаете, что  NGINX, Inc.  это такая левая компашка, которая чисто по кибесквоттерски зарегала похожий, но отдельный домен? Или, всё-таки, сумеете оценить разницу между NGINX и NGINX Plus ? вы правда думаете что формулирование сомнительных утверждений в вызывающе-вопросительном тоне способствует продуктивной дискуссии? вы можете найти упоминание функционала upload module в описании NGINX Plus? ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 08.05.2018, 19:10 | |||
|---|---|---|---|
| 
 | |||
| nginx с модулем upload и повреждение файлов | |||
| #18+ Мутагенвы можете найти упоминание функционалаА вы можете осознать один простой факт: если коммерческая компания составила список модулей, разработанных сообществом для NGINX/NGINX Plus, то, наверное, "всякая фигня" в этом списке надолго не задержится? ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 11.05.2018, 07:00 | |||
|---|---|---|---|
| 
 | |||
| nginx с модулем upload и повреждение файлов | |||
| #18+ В итоге проблема решилась так: нашел решение проще - использую WebDAV. Для него и компонент в delphi соответствующий есть, и пересобирать боевой сервер не придётся. Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Видимо по невнимательности не написал о том, что мне надо залить файлы на nginx и потом с него раздавать. Бэкенда нет. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 
 | 

| start [/forum/topic.php?fid=25&tablet=1&tid=1481343]: | 0ms | 
| get settings: | 10ms | 
| get forum list: | 12ms | 
| check forum access: | 3ms | 
| check topic access: | 3ms | 
| track hit: | 39ms | 
| get topic data: | 12ms | 
| get forum data: | 3ms | 
| get page messages: | 52ms | 
| get tp. blocked users: | 2ms | 
| others: | 226ms | 
| total: | 362ms | 

 
    | 0 / 0 | 
