Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Общие вопросы о Flash (не затрагивающие ActionScript) (http://www.flasher.ru/forum/forumdisplay.php?f=60)
-   -   Проблема при выкладке на веб-сервер (http://www.flasher.ru/forum/showthread.php?t=76880)

swordsman79 14.03.2006 16:48

Проблема при выкладке на веб-сервер
 
Бьюсь уже месяц наверное...
В общем создаю простейшую кнопку которая должна открыть файл
Скрипт:

Button1.onRelease = function(){
getURL("file://///Server/soft/CalcPlus.msi", "_self", "GET");
};
Тестирую - все пашет
Дримвивером вставляю в страничку и выкладываю на сервер, где поднят IIS 6.

Открываю страничку со своего компа, нажимаю на кнопку и....НИЧЕГО НЕ ПРОИСХОДИТ.
Пробую и Эксплорером и Файерфоксом и Оперой. Ничего. И никаких всплывающих окон типа что-там заблокировано тоже нет.

Иду к другому юзеру на комп, открываю с него. Пашет! Но только из Эксплорера и Макстона. Опера и ФаейрФокс не работают по-прежнему.

В чем может быть дело? Уйти с IIS на Apache? Уже все настройки в браузерах убрал на low, все всплывающие окна разрешил. Никакого толка. Я уже устал ковыряться ужасно. Помогите!

Homo Sapiens 14.03.2006 20:04

А ты уверен, что учётная запись, под которой работает сервер имеет доступ к этому файлу?
Да и кто ж так путь прописывает? Прописый тогда нормальный абсолютный путь начиная с диска и т.д. без псевдопротоколов типа file:.
И зачем хранить swf выше корня сайта?

swordsman79 15.03.2006 12:19

Вот если переносим файлик в корень сайта, то все работает:
Button1.onRelease = function(){
getURL("http://Server/site/CalcPlus.msi", "_blank", "GET");
};
А из другой папки soft браться этот файл не хочет, хотя разрешения все стоят. И папка расшарена для пользователя веб-сервера. Пишет Ошибку 404.
С абсолютным путем пробовал, может написал опять криво...
Вот например локальный путь до файла на серваке такой:
E:\Soft\CalcPlus.msi
Как его вписать в getURL? И вообще разве он не будет тупо искать такой файл на компе юзера а не на сервере?!

И еще маленький вопросик, а что такое псевдопротоколы?

styx 15.03.2006 12:57

А как же безопасность? Раз swf открыт с сервера, то на компьютере пользователя ему что-либо искать запрещено. Поэтому и не открывает.

Homo Sapiens 15.03.2006 18:32

Flash ни при каких обстоятельсятвах не ищет файлы на компе пользователя.
+ Flash не открывает файлы по относительному пути (насколько я помню).
Если твой файл лежит по пут E:\Soft\CalcPlus.msi папка должна быть расшарена в виртуальную директорию, например Soft. Тогда и обращайся как http:// [твой сервер] /Soft/CalcPlus.msi. Это первое.
А второе - Flash не будет запускать исполняемый файл на удалённой машине.

Homo Sapiens 15.03.2006 18:35

Псевдопротокол - это команда, которая воспринимается как протокол, но на деле им не является. Например HTTP - hyper text transfer protocol, FTP - file transfer protocol, а javascript:, mail: протоколами не являются, но показывают что нужно исполнить код javascript для этой страницы и запустить программу электронной почты соответственно.

swordsman79 16.03.2006 12:23

Я наверно путанно объяснил...Тут ситуация-то простая. Я хочу чтобы пользователь мог зайти браузером на наш локальный веб-сервер, кликнуть на кнопочку флешевую и скачать файлик, находящийся на том же сервере, ну может на другом харде. Вот и все. Этот же файл он может скачать через "Сетевое окружение", но я хочу чтоб все цивильно было. :-)
Насколько я понял, надо обязательно делать виртуальную директорию, так? Иначе никак не получится?

styx 16.03.2006 12:48

Если пользователь открывает флешку через http:, то и файл должен быть доступен по этому протоколу. Сетевое окружение к протоколу http: не имеет никакого отношения, поэтому нужно сделать, чтобы этот файл был виден через http-сервер. А уж через виртуальную директорию или как - Вам решать. Однако имейте в виду, что в любом случае файл вначале скачается на компьютер пользователя, потом браузер спросит, что с ним делать - и только тогда откроется (в случае с .msi).

Homo Sapiens 16.03.2006 18:08

Начнём с того, что чтобы скачать файл, нужен Flash 8 и использовать класс FileReference. Для того чтобы скачать файл по протоколу http тебе обязательно нужно сконфигурировать виртуальные директории.

styx 16.03.2006 18:19

Цитата:

Сообщение от Homo Sapiens
Начнём с того, что чтобы скачать файл, нужен Flash 8 и использовать класс FileReference.

Не, это чтобы закачать :)


Часовой пояс GMT +4, время: 20:57.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.