Comment puis-je faire en sorte qu'un fichier javascript ne fonctionne que sur un seul domaine. Je vais compresser ce fichier et quand quelqu'un essaie de l'utiliser en copiant mon site web ou juste le fichier javascript, cela ne fonctionnera pas et donnera une alerte. Il s'agit d'un example. J'ai téléchargé tous les fichiers mais quand essayer de voir il donne une alerte qui dit que je dois l'acheter (exactement ce que je vais faire :)Fichier Javascript pour un seul domaine
Répondre
Vous ne pouvez pas vraiment faire cela. Vous pourriez mettre quelque chose au début de votre code comme ceci:
if (window.location.href.substring(0, 18) != "http://example.com") {
alert("You thief! Stop using my code!");
}
... mais tout ce qui signifie que la personne qui l'utilise supprimerait que de leur copie. Obfuscation pourrait aider, mais pas nécessairement beaucoup. Tout ce que l'interpréteur Javascript peut interpréter, quelqu'un peut copier et réutiliser. Tout ce que vous pouvez faire est de placer la barre un peu plus haut, et vous avez probablement des choses plus importantes à faire.
Utilisez 'location.host' de préférence à' href', et faites un 'toLowerCase()' dessus pour obtenir une comparaison insensible à la casse. – bobince
@bobince: Bons points à la fois. Mais bien sûr, il n'y a pas grand-chose de toute façon ... –
C'est pas possible, javascript peut être obfuscated mais un développeur adepte peut toujours comprendre cela et utiliser vos fichiers. Vous pouvez copyright votre fichier mais toujours dans les pays où il n'y a pas de politique de confidentialité, cela n'a pas d'importance.
Dans les langages de script, le code source et le programme sont les mêmes que les langages compilés dans lesquels vous compilez le code source dans un binaire qui est dans un format différent. C'est pourquoi (comme d'autres l'ont dit) vous ne pouvez pas protéger votre code JavaScript contre l'utilisation par d'autres. La seule méthode (autre que l'obscurcissement que d'autres ont mentionné) est de déplacer l'implémentation ailleurs, vous pouvez créer un web-service contenant la logique que vous voulez protéger et ensuite faire appel à JavaScript en utilisant AJAX (et vérifiez qu'il provient de votre site). Ceci présente les inconvénients évidents d'être plus lent et de vous fournir une puissance de traitement au lieu d'utiliser les processeurs côté client.
Vous pouvez décompiler un langage compilé, Ida pro est puissant. – rook
@Rook Bien sûr que vous pouvez décompiler certaines langues, je discutais dans l'autre direction, puisque le code source est ce qui est exécuté, il n'y a pas de concept de protection du code source lors de la distribution du code exécutable. – Motti
Exécutez-le par JSMIN (uglifier), si vous êtes toujours inquiet, javascript est la mauvaise solution.
- 1. Comment utiliser mod_rewrite pour un seul fichier?
- 2. l'authentification Windows pour un seul fichier
- 3. Autorisations SVN pour un seul fichier
- 4. Protégez un seul fichier!
- 5. plusieurs instances de django sur un seul domaine
- 6. sharpziplib + extraire un seul fichier
- 7. Accès TFS refusé à un seul utilisateur de domaine spécifique
- 8. Comment résoudre ayant 2 belongsTo dans un seul domaine
- 9. Javascript pour ouvrir plusieurs onglets dans un seul navigateur
- 10. Comment masquer des serveurs distribués sous un seul domaine?
- 11. Combien de cookies puis-je définir via un seul domaine?
- 12. Utilisation de Prototype pour charger un fichier JavaScript à partir d'un autre domaine
- 13. regex pour un seul mot en minuscule
- 14. htaccess pour un sous-domaine
- 15. Utilisation de MSBuild pour compiler un seul fichier cpp
- 16. une bibliothèque Python Distribution (un seul fichier)
- 17. Pages d'erreurs personnalisées utilisant un seul fichier
- 18. L'application Sinatra dans un seul fichier JAR?
- 19. compiler et publier un seul fichier .cs
- 20. SVN - Comment télécharger un seul fichier?
- 21. Comment "recharger" un seul fichier vhost
- 22. Mercurial Revert/Backout un seul fichier
- 23. Emacs l'interface VCS engage un seul fichier
- 24. Utilisation de Javascript/jquery affichant un seul fichier dans un vol
- 25. gwt compile en un seul fichier html multi-navigateur monolithique
- 26. Existe-t-il un moyen pour un fichier JavaScript de charger un autre fichier dans AIR?
- 27. Inclure un fichier JavaScript dans un fichier JavaScript
- 28. Comment télécharger un fichier via un seul formulaire HTML vers plus d'un seul serveur
- 29. C# Utiliser Linq pour extraire un seul attribut XML pour chaque fichier XML dans un répertoire
- 30. Valider site/domaine via javascript
Ceci est impossible. – rook
@The Rock: Pouvez-vous désobstruer ce fichier: http://s3.envato.com/files/293712/javascript/msgbox/jquery.msgbox.min.js? –
Cela devrait probablement avoir une étiquette de sécurité, je ne pense pas que la balise hijack est utile. – rook