Здравствуйте.
Озадачился я такой пролемой:
- как правильно защитить исходный код сайта от посторонних глаз - шифрование самого кода, пароль на файлы и т.п.
Прощу Вашего совета, как лучше и чем лучше это сделать?
Спасибо.
Вид для печати
Здравствуйте.
Озадачился я такой пролемой:
- как правильно защитить исходный код сайта от посторонних глаз - шифрование самого кода, пароль на файлы и т.п.
Прощу Вашего совета, как лучше и чем лучше это сделать?
Спасибо.
Речь идет об исходном коде страниц, которые в браузер отдаются, или об исходном коде скриптов (того же PHP)?
Alexiss, о каких кодах речь? Коды бывают разные.
сформулируйте правильно вопрос, или вы имеете ввиду Ctrl+U ?
Если Вы про html, то никак.
Если про js, то наверное тоже никак.
Если про css - ну наверное опять никак.
Если про php, то он и так не передается броузеру, клиент его не видит.
SergioRezzа почему никак?
Есть такая програмка которая кодирует хтмл и т.д.
Посмотрите такие программы как:
HTML Guardian
Encrypt HTML Pro 3.0 Программка для защиты HTML-страниц от просмотра и использования исходного кода, включая код HTML, JavaScript, VBScript, текст, ссылки и графику и т.д.
PHP Screw 1.5
Утилита для шифрования исходных кодов скриптов.
HTMLPower 3.8.2
Утилита для комплексной защиты содержания вашего сайта. Зашифрует HTML код, добавит запрет на использование правой кнопки мыши, создаст навигацию, препятствующую скачиванию целого сайта, спрячет email адреса от спаммерских роботов.
Atrise HTMLock
Программа кодирует и защищает паролем HTML-страницы. Для просмотра таких страниц не нужны специальные программы - достаточно обычного браузера, так как для обработки страниц используется JavaScript. Страницы кодируются XOR алгоритмом.
И еще можно найти как минимум столько же :)
Программы есть - только все это для дураков. Все что отдается в браузер можно посмотреть средствами браузера (HTML, CSS, JS) - пусть у Вас хоть все кнопки и нажатия мыши заблокированы.
<script>
function preventSelection(element){
var preventSelection = false;
function addHandler(element, event, handler){
if (element.attachEvent)
element.attachEvent('on' + event, handler);
else
if (element.addEventListener)
element.addEventListener(event, handler, false);
}
function removeSelection(){
if (window.getSelection) { window.getSelection().removeAllRanges(); }
else if (document.selection && document.selection.clear)
document.selection.clear();
}
function killCtrlA(event){
var event = event || window.event;
var sender = event.target || event.srcElement;
if (sender.tagName.match(/INPUT|TEXTAREA/i))
return;
var key = event.keyCode || event.which;
if (event.ctrlKey && key == 'A'.charCodeAt(0))
{
removeSelection();
if (event.preventDefault)
event.preventDefault();
else
event.returnValue = false;
}
}
addHandler(element, 'mousemove', function(){
if(preventSelection)
removeSelection();
});
addHandler(element, 'mousedown', function(event){
var event = event || window.event;
var sender = event.target || event.srcElement;
preventSelection = !sender.tagName.match(/INPUT|TEXTAREA/i);
});
addHandler(element, 'mouseup', function(){
if (preventSelection)
removeSelection();
preventSelection = false;
});
addHandler(element, 'keydown', killCtrlA);
addHandler(element, 'keyup', killCtrlA);
}
preventSelection(document);
document.ondragstart = test;
document.onselectstart = test;
document.oncontextmenu = test;
function test() {
return false;
}
</script>