Web Anwendung: Source code Verstecken?

5 Antworten

Vom Fragesteller als hilfreich ausgezeichnet
Ich möchte meinen Code in PHP & CSS für anfänger nicht einfach so kopieren lassen. (...)

Der PHP-Code bleibt eh beim Server und ist somit für den Nutzer nicht einlesbar. Es sei denn, deine Anwendung / der Server würde erhebliche Sicherheitslücken aufweisen.

(...) doch es soll wirklich nur das "Seiten Quelltext Anzeigen" etwas verschleiern.

Würdest du den Seitenquelltext (HTML, CSS) verschlüsseln / verschleiern / o.ä., würde der Browser auf das Problem stoßen, diesen selbst nicht mehr lesen zu können. Das stellt daher keine Option dar.

Die naheliegendsten Möglichkeiten wären da eher:

  • einen Großteil der Inhalte dynamisch mit JavaScript nachladen (so sind sie nur im Inspektor sichtbar, jedoch nicht im Seitenquelltextfenster)
  • mehrere Inhalte mit SVG Paths zusammenbauen oder Bilder verwenden
  • das Kontextmenü verbergen (oncontextmenu="return false")
  • Einbindung von custom elements

Mit den ersten drei Punkten sorgst du aber ebenso dafür, deine Webseite in der Nutzbarkeit erheblich zu verschlechtern. Im letztgenannten Fall würdest du einigen Mehraufwand betreiben müssen, der sich, wenn er nicht gut umgesetzt wird, ebenso negativ für den einfachen Nutzer auswirken kann.

(...) das ganze soll nur ein erst schutz gegen ein paar anfänger sein die meine arbeit kopieren wollen (...)

Ich denke, es gibt im Internet genügend kostenlose HTML-Templates, die eher für eine Nutzung in Betracht gezogen werden.

Wenn deine Webseite so einzigartig und wertvoll im Design ist, schreibe Copyright-Kommentare in den Code. Vielleicht schreckt das ab.

maxhat3beine 
Fragesteller
 26.07.2021, 09:16

Ausführliche Antwort wie immer, danke für die Antwort. ich glaube ich lasse es liber sein und schreibe ein paar Kommentare in den code.

1

PHP kommt sowieso nicht zum client und alles, was der runterladen muss, also auch die css-daten, kann er lesen.

Ein klassischer Trick für CSS- und JS-Dateien ist es, den Code mit einem Minifier nahezu unlesbar zu machen, bspw. mit Terser: https://terser.org/

Beispielhaft sieht das so aus: https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.bundle.min.js

Der PHP-Code wird ja serverseitig ausgeführt und ist eh nicht für den Client sichtbar.

Dasselbe Vorgehen wie bei JS- und CSS-Dateien lässt sich auch auf dein HTML anwenden.

Liebe Grüße

Niklas

Woher ich das weiß:Berufserfahrung – Freelance IT Consultant

Geht nicht. Außer PHP - ist ja eh nicht sichtbar

entferne einfach alle Zeilenumbrüche etc. schreibe deinen HTML-Code halt so unlesbar wie möglich und schon überlegt man sich zwei oder drei mal ob man den Code bei dir oder ind einem HowTo kopiert ;)

Woher ich das weiß:Berufserfahrung – DevOps C# Entwicklung

Das ist bei PHP-Anwendungen irrelevant, weil deren Code eh nicht für den Client sichtbar ist. Der Client bekommt nur den von PHP generierten Content.

Bei CSS sieht das anders aus. Das ist für den Client (und somit auch den User, der eventuell den Quellcode der Internetseite anschaut) immer lesbar und auch nicht "versteckbar".