2010-06-18 4 views
1

Я создаю сайт для кого-то бесплатно (в качестве одолжения), однако у меня в конце будет моя ссылка внизу. Как я могу сделать так, чтобы сайт не работал правильно, если ссылка удалена? Также могу ли я удвоить это и разрешить, чтобы я мог удаленно изменить ссылку?Предотвращение удаления кода при его распространении?

Очевидно, что я бы использовать или JavaScript для PHP (желательно PHP)

Есть ли простой способ сделать это? Или это просто вопрос eval (base64_decode()); ?

Спасибо, Стефан

ответ

5

Не намереваясь использовать преступление, которое сделает дизайн бесполезным, если ваш адрес электронной почты будет удален, звучит как бы зло. Нет надежного способа предотвратить обратную разработку исходного кода веб-сайта, даже если вы попробуете какие-то нелепые javascript hijinks, которые проверяют DOM на наличие вашего адреса электронной почты.

Лично, хотя, возможно, слишком поздно для этого, я бы рекомендовал заключить с клиентом договор, в котором оговаривается, что ваша контактная информация не может быть удалена из проекта. Юридические проверки могут быть более сильными, чем технические, и я считаю, что это так.

Еще один вопрос: зачем заниматься бизнесом с кем-то, кому вы недостаточно доверяете, чтобы дать вам кредит на вашу работу?

Да, вы можете удаленно изменить ссылку. Самый простой способ - получить FTP-доступ к хосту клиента и просто изменить исходный код на развернутом веб-сайте.

+0

Я делаю это для друга, который добавляет контент для своего друга. Это просто, чтобы быть уверенным, и было в основном любопытством быть честным. Думал о создании шаблонов и о том, как я мог это сделать раньше. Спасибо за ваш ответ. Его быстрая 2-часовая работа, поэтому я не вижу необходимости в контрактах :) Друзья - друзья, и эта ценность стоит больше, чем их, чтобы удалить ссылку, и я им доверяю! –

0

Вы не можете. Существует не дурацкий способ сделать это, и никакая обфускация и другие трюки не стоят усилий. Просто время от времени проверяйте, сохраняется ли ссылка на месте.

Если у вас должно быть автоматическое решение, вы можете настроить искатель (например, используя wget), который посещает сайт каждые две недели и проверяет наличие ссылки. Но тогда его можно было сохранить на месте и просто сделать невидимым с помощью CSS ... Я действительно считаю, что проверка вручную - лучший способ.

2

Ваша эффективность зависит от навыков кодирования человека, которому вы пользуетесь. Единственный способ гарантировать, что он не изменит URL-адрес, - это разместить его. Даже если вы дадите ему двоичную услугу, которая обращается к удаленному сайту для URL-адреса, достаточно умный человек может изменить двоичный файл (да, это может быть трудно сделать). Я бы посоветовал убедиться, что вы доверяете человеку и не делаете его только для ссылки.

Если вы сделаете это для ссылки, некоторые простые обфускации (например, ROT13 или base64) часто делают хорошую работу. Аналогичным образом вы можете поддерживать удаленные обновления.

0

Вы можете дать им почти весь код. Например, сохраните кусок Javascript, размещенный на управляемом вами CDN-сайтом. Этот Javascript будет иметь решающее значение для работы страницы, и ее трудно заменить. В дополнение к важной функциональности этот Javascript обеспечит присутствие вашего адреса электронной почты, вставив в него новые элементы DHTML.

Конечно, они могли просто загрузить ваш Javascript из CDN, удалить часть, где вы манипулируете DHTML, и разместить свою собственную копию Javascript, изменив ссылку в HTML.

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

+0

Javascript, размещенный на CDN, можно просматривать, копировать и заменять на сервере. Единственный способ убедиться, что внешний ресурс зависит от того, является ли этот внешний ресурс серверным. В любом случае, это вводит проблемы с задержкой, которые, я уверен, являются более чем достаточным основанием считать, что вы не делаете этого в большинстве случаев. – eyelidlessness

Смежные вопросы