запретить сохранение страницы. ??
Знатоки, можно ли запретить сохранение страницы на j-javascript? чтобы не сработало "файл-сохранить как... (страница полностью)" или "файл-сохранить как... (только хтмл, те более строгое условие).
? |
Если придумаете как блокировать, проверьте, не снимается ли Ваша блокировка вот таким образом:
HTML код:
javascript:(function() |
нииичё не понял :)
кто и где снимает блок? заходит посетитель на саит, пробует сохранить страницу в свою локальную папку и получает типа "не возможно...", вот это требуется :) в принципе сойдёт чтобы нельзя было сохранить полностью (те хтмл-код+все примочки в отдельной папке типа картинок, цсс и скрипт-файлов) бывает такое в природе ж-жаваскрипт? |
Dafi
Код страницы со всеми картинками передаётся компьютеру сервером и также сохряняется в компьютере (зависит от настроек браузера), то есть запрет на "Сохранить как..." ничего не даст, только против мало чего знающих людей защитит, а им то код страницы явно не нужен, отсюдо вывод, вся эта защита бессмысленна |
vadimiron
ну кеширование можно отключить в header() на пхп, это не проблема, я имею ввиду можно ли зделать так, чтобы не сработала команда из меню "файл-сохранить(как)"? при этой команде браузер предлагает варианты, и два из них это сохранить полностью (при этом сохраняется хтмл-код+картинки и цсс и скрипт-фаилы в отдельной папке, которая сама создаётся), или сохранить чисто хтмл-код. вопрос в том: можно задизаблить хотябы 1-й вариант? (жскрипт, ВБ, активХ) например типа как блокируется правая кнопка мышки на жскрипт. |
Dafi
Если такое и возможно, то наверное только в осле, все потуги с жабаскрипт - защита от ламеров. Если контент передается на компьютер, то его всегда можно сохранить многими способами. Эта защита бесполезна! |
>>типа как блокируется правая кнопка мышки на жскрипт.
Приведённый выше кусок кода как раз отменяет эту блокировку. Т.е. она бесполезна против продвинутого пользователя. |
Цитата:
|
Ну а для "не очень" прдвинутого юзера можно как то "засекретить" хотябы ж-жаваскрипт? (пхп он и так не увидит), те юзер заходит на саит и всё работает, но сохранив страницу, на локальном компе она становится неработоспособной (не работает жскрипт). И если возможно, то же самое относительно цсс-фаила.
|
нет!
|
не стал бы поднимать старую тему, но эта страница полностью не сохраняется, только хтмл. может браузер глючит ?
http://dev.mysql.com/doc/mysql/en/create-database.html |
Dafi
Это не спасает от сохранения страницы... Разбираться лень, но там какие заморочки с файлами стилей (через жабаскрипт выбираются... мож еще какие грабли есть) |
можно в конфигурации Apache вставить строки:
Код:
<Files ~ ".*\.css"> на счет других WEB серверов - не знаю, никогда не делал :idontnow: (как я понимаю, это только частичное решение проблемы) :bad: так что лучше всего делать небольшие HTML файлы, и в них вставлять ссылки на внешние скрипты |
elfoflorien
спасибо, посмотрю настройки, уже просвет по теме... естестно жс и цсс в отдельных файлах :) |
elfoflorien
есои js/css-файлы не будут скачаны, то и не будут отрабатывать, т.к. отрабатывают они на стороне клиента (браузера). Или я чего-то не понимаю? :) |
Насколько я разбираюсь в веб-программировании (а разбираюсь я плохо :)), в примере с http://dev.mysql.com/doc/mysql/en/create-database.html используется глупость браусвера, а не запрет на скачивание css и js. Браусвер не трогает (не скачивает) ссылки на ссылки. А тут как раз такой случай - строка с описанием стиля определяется скриптом, а результат уже скачивается. Т.о. документа с описанием стиля как бы не существует - у меня нет имени конкретного файла., браусвер тупит, считая некорректным сохранять файл с именем, соответствующим текста скрипта. Но можно одноразово скачать файлы стилей и затем поменять во всех html'ках скриптовую ссылку на жёсткий аналог Можно руками всё проделать - но метод руками, очевидно, не годится для массового скачивания сайтов, так как нужен индивидуальный одход в каждом случае.
|
>>то и не будут отрабатывать
mar не так просто... допустим некто делает прогу для заказчика (всё далеко , те город, государство и тд) заказчик платит за это реальными деньгами (исполнитель ну как то о себе должон подумать :) ) как может исполнитель "засекретить" деяния свои? прога-ж-жаваскрипт... + исполнитель имеет возможность показать это всё, и не хотел бы чтоб скачали и смотрели'б скрипты и цсс :) |
Букмарклет:
HTML код:
javascript:s=document.getElementsByTagName('STYLE'); ex=document.getElementsByTagName('LINK'); d=window.open().document; /*set base href*/d.open();d.close(); b=d.body; function trim(s){return s.replace(/^\s*\n/, '').replace(/\s*$/, ''); }; function iff(a,b,c){return b?a+b+c:'';}function add(h){b.appendChild(h);} function makeTag(t){return document.createElement(t);} function makeText(tag,text){t=makeTag(tag);t.appendChild(document.createTextNode(text)); return t;} add(makeText('style', 'iframe{width:100%;height:18em;border:1px solid;')); add(makeText('h3', d.title='Style sheets in ' + location.href)); for(i=0; i<s.length; ++i) { add(makeText('h4','Inline style sheet' + iff(' title=%22',s[i].title,'%22'))); add(makeText('pre', trim(s[i].innerHTML))); } for (i=0; i<ex.length; ++i) { rs=ex[i].rel.split(' '); for(j=0;j<rs.length;++j) if (rs[j].toLowerCase()=='stylesheet') { add(makeText('h4','link rel=%22' + ex[i].rel + '%22 href=%22' + ex[i].href + '%22' + iff(' title=%22',ex[i].title,'%22'))); iframe=makeTag('iframe'); iframe.src=ex[i].href; add(iframe); break; } } void 0 |
hasherfrog
ну положил бы этот скрипт нормально (не ложте, ложат... :) ) спасибо, скопирую и проверю (естестно заработает), ток это антисредство, а я про средсва, которые жаваскрипт типа "секретят" :) и цсс... |
Цитата:
Цитата:
Ладно, я умываю руки. |
hasherfrog
ну извините, шутка же... :) просто он виден (ие6.2) в одной строке с горизонтальной прокруткой, а юмор как бы полезен :) против профи естестно нет средств, но кто платит, они типа полу-профи, и вопрос (мой) не без смысла :) |
А я знаю кто на самом деле "тот кто платит" ;).
Однако это, имхо, именно тот случай когда заказчику говорят о принципиальной невозможности воплощения его голубых мечтаний в жизнь. Хотя бы потому, что он узнав о хищении с сайта занюханного однопиксельного гифа, тут же повесит на разработчика измену родине. Оно, Dafi, надо тебе? Ну стольник баксов заработаешь... и? Халява? :) |
Dafi
Тебе же сказали, много раз, нельзя такое сотворить с html. Можно только усложнить жизнь смотрящим в html, убрать лишние пробелы и символы новой строки, можно еще использовать криптование через javascript какой-нибудь важной части, но это будет тормозить и тоже легко лечится... |
Dafi
и еще, если Вы делаете что-то "за реальные деньги", а не для себя, то дурить заказчика, надеясь на то, что он не профи (и что профи нигде поблизости не найдется (!)) - дурной тон. Причем даже, если думать не о морали, а о выгоде, то честное обращение с заказчиком выгодней - в следующий раз заказ больше шансов получить. |
>>дурить заказчика
боже упаси... :) речь о том, чтобы показать работоспособную страницу так, чтобы заказчик не смог сохранить скрипты (мера предосторожности :) ), а затем (после оплаты например) честно здать исходники с подробными коментариями :) да и принципиальная сторона тоже интересна (те как это можно зделать) archy >>криптование через javascript возможно такое? буду благодарен за инфу об этом... |
mar
Цитата:
|
Цитата:
|
кэширование отменяется насколько я знаю этим заголовком на пхп:
header("Cache-Control: no-cache, must-revalidate"); для верности можно добавить еще типа header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); и не закачивается (пробовал) :) а если "фаил-сохранить (полностью)", то жс-цсс фаилы и картинки сохраняются в отдельной папке, что и требуется как то отменить :) как это зделано например на тои странице которая не сохраняется (ссылка на первой странице темы) |
Dafi
Я конечно дико извиняюсь, может сменить атрибуты файлов на hide ? Сделать их скрытыми ? |
ALLY
а как это зделать? имеется в виду скрипт на стороне клиента, который изменит атрибут на "скрытый" ? |
Dafi
Сделать это можно прямо у себя. Но это сработает, если у клиента Не включена опция " Показывать скрытые файлы папки". В умной книжке говорится, чтобы показать что-то клиенту, надо сделать серию снимков с экрана. Снабдить снимки пояснительными текстами: типа " А на этом изображении показан результат нажатия на кнопку "Наши товары" . |
>>Но это сработает, если у клиента Не включена опция " Показывать скрытые файлы папки".
а если включена? суть вопроса-показать клиенту работоспособную страницу (те скрипты должны работать, показать картинку недостаточно), но так, чтобы у клиента не было доступа к исходнику скриптов. в этом смысле спасибо авторам за советы о том что браузер не отрабатывает ссылки на ссылки и о настройках сервера (см. пример страницы в теме) Да и Билл с ними, с деньгами, спортивный интерес и всё такое... :) |
mar
зайдите на сайт miniclip.com, и попоробуйте скачать там любой java аплет - ничего не получится, я уже неоднократно пробовал прошу прощения за подобный пример, но другого не помню :) Цитата:
|
ALLY, Dafi
все-таки мне кажется, что скрытые файлы и папки в Windows - задача Проводника ®, сколько раз пробовал обращаться к скрытой биллом папке (и файлу) по известному ее имени, все получается, то есть билл не ограничивает доступ к файлу или папке, а всего лишь не отображаетобъект. а здесь встал вопрос о запрещении скачивания файла (предполагаю, по протоколу HTTP). скажу даже больше - если не разрешать доступ к содержимому директория в Apache, то клиент никогда и не увидит содержимого (хацкеры - исключение :)) |
elfoflorien
Цитата:
Буркмарклет. HTML код:
javascript:s=document.getElementsByTagName('SCRIPT'); d=window.open().document; /*140681*/d.open();d.close(); b=d.body; function trim(s){return s.replace(/^\s*\n/, '').replace(/\s*$/, ''); }; function add(h){b.appendChild(h);} function makeTag(t){return document.createElement(t);} function makeText(tag,text){t=makeTag(tag);t.appendChild(document.createTextNode(text)); return t;} add(makeText('style', 'iframe{width:100%;height:18em;border:1px solid;')); add(makeText('h3', d.title='Scripts in ' + location.href)); for(i=0; i<s.length; ++i) { if (s[i].src) { add(makeText('h4','script src=%22' + s[i].src + '%22')); iframe=makeTag('iframe'); iframe.src=s[i].src; add(iframe); } else { add(makeText('h4','Inline script')); add(makeText('pre', trim(s[i].innerHTML))); } } void 0 |
elfoflorien
А при чем тут java applet? В кеше все сохраняется, по крайней мере во время просмотра страницы. Dafi Найди реализацию любго шифра на javascript и вперед, используй... если речь идет о ламерах, то достаточно использовать base64. По поводу страницы с mysql.com, есть отличный екстеншин для мурзилки scrapbook называется, все сохраняет! |
archy
при том, что файлы с расширением .class не кешируются, благодаря невозможности закачать их на компьютер клмиета, а пример я привел такой, потому что другого, как я уже говорил, не помню |
>>есть отличный екстеншин для мурзилки scrapbook называется, все сохраняет! :)
отчасти потерял интерес к теме, потому что посмотрев хтмл-код, скачал все их цсс-ы и ж-скрипты правым кликом :gigi: (как я раньше об этом не подумал :) ) позже постараюсь разобраться почему эта страница не сохраняется полностью (спортивного интереса ради таксаать :) ) >>Найди реализацию любго шифра на javascript те он будет рабочий но нечитабельный ? если да-буду всем благодарен за линки :) |
hasherfrog
вопрос: куда он скачается и откуда? |
elfoflorien
пардон - давно не была. Давайте не путать Java-фпплет и JavaScript и страницу .jsp с апплетом ;] ? А что касается JavaScript с этого сайта, то ловите, первую ссылку на странице по Вашей ссылке http://www.miniclip.com/javascript/oas_home.js Код:
//configuration Dafi Извини, не поняла :) Лучший выход предложил ALLY - скриншоты |
mar
прошу извинения, я неправильно объяснил: я имею в виду не .jsp и не определенный тип файлов, а способность сервера apache отклонять любую попытку обращения к файлу с любым расширением (в данном примере - .js и .css), указанным в конфигурации вот таким вот кодом: Код:
<Files ~ ".*\.css"> |
Сие значит, что браузер не получит эти файлы = стили и скрипты иcполняться не будут, в таком случае можно их снести к черту и не напрягать апач всякими .htaccess.
Ответ был дан на этот вопрос, сие не ВОЗМОЖНО! |
elfoflorien
к тому, что выше говорила я и более доходчиво - только что archy, добавлю: по указанной ссылке я привела именно .js, работающий на страничке. Еще раз: js и css работают только на стороне клиента, то есть для работы их необходимо подгрузить на машину клиента. Если их не подгрузить - работать не будут, если подгрузить - значит они уже "скачены". Все собственно. |
а почему она ( http://www.mysql.com ) не сохраняется полностью ? и кстати в кеше она не видна (даже досовским командиром смотрел ), сидит она в кеше, и выводится при запросе (от браузера), где,ж она треклятая ? :)
|
Dafi
Я же объяснил. Что не так? |
ну тогда остается один способ - HTTP заголовок No-Cache, или что-то в этом роде (где здесь видел, не могу найти :))
archy,mar странно, как же у меня это получилость ?.. |
Dafi
У тебя оська то, какая? В ХР видны 27 файлов. |
Dafi
Кривой браузер используешь, повторяю, в firefox+scrapbook все отлично сохраняется! elfoflorien Ты колдун какойто, Пендальф или как там его :) |
archy
Цитата:
страница не сохраняется "полностью", (файл-сохранить полностью), это меня заинтересовало... наверное причина типа браузер не обрабатывает ссылки на ссылки... оска вин98се2+ие6.2 а разве в хп (вин2000) сохраняет? (именно "файл-сохранить полностью", а так и без лишних примочек эти фаилы можно при желании скачать :) ) |
Время: 00:51. |
Время: 00:51.
© OSzone.net 2001-