HowTo Programm Webseite (kein fertiges CMS) eher eigenes super simples CMS

phatt

Ensign
Registriert
Juni 2010
Beiträge
129
Ich will erst einmal primär Webseiten programmieren
Beim Frontend bin ich schon relativ sicher in HTML und CSS – beim backend habe ich ein wenig in PHP und Python reingeschnuppert aber eher nur etwas editiert und nichts from Scratch gebaut.
Bin irgendwie auf der suche nach einer guten IDE oder halt einfach einem Editor wie Notepad++, VS Studio (Code) o.ä. hätte einen kleinen Homeserver hier zum testen – die Sachen sollen aber später dann auch auf jedem xyz Webshostigserver laufen.
Dachte bevor ich mich jetzt schon Wild in Codezeilen stürze und noch mehr rumprobiere halte ich zunächst fest was ich überhaupt vorhabe und frage hiermit um Rat wie sich das am besten realisieren lässt bzw. mit welcher Sprache/Technik.
Was mich bei Visual Studio (ohne Code) nervt, dass wenn ich ein leeres Projekt erstelle schon 27 Dateien in 6 Unterverzeichnissen erstellt werden.
Andere Baustelle wäre noch git – macht ja beim proggen denke ich viel Sinn – aber nehme ich da einfach Github oder setze ich lieber gleich mein eigenes gitlab, gogs oder Konsorten auf?
Gerne nehme ich auch Links zu aktuellen Guides und oder How To Anleitungen entgegen.

Soweit erst einmal von mir schon einmal danke für das Lesen und ich würde mich über Konstruktive Antworten freuen.
 
die ersten Fragen wären:
  • was für eine webseite möchtest du bauen?
  • was sind deine vorkenntnisse?
  • wieviel Zeit möchtest du investieren?

Zum Thema git musst du dir überlegen, für was du es nutzen möchtest willst du nur versionierung genügt ein git repo auf deiner HDD. Willst du ein externes "backup" auf das mehrere Leute zugreifen können -> github. willst du deine projekte bei dir behalten und auf keinen fall darf das je einer zu gesicht bekommen, es sollen aber trotzdem merere leute dran arbeiten -> selfhosted gitlab
 
  • ich möchte eigentlich erst einmal kleinere "Visitenkarten Seiten" erstellen und nicht jedes mal alles per Hand machen. Später dann ein paar (komplexere) Zusatzfunktionen, die dann über Plug-Ins realisiert werden sollen.
  • also HTML und CSS beherrsche ich relativ gut, beim backend müsste ich mich halt noch etwas mehr in eine Programmiersprache reinfuchsen - bin da aber noch unschlüssig, ob jetzt PHP, Python oder was jetzt die richtige Sprache für mein vorhaben wäre.
  • würde schon (sehr) viel Zeit investieren
okay also da werde ich dann wohl erst einmal lokal nach einer git Lösung Ausschau halten - gibt es da auch was, dass sich dann mit einem self hosted gitlab synchronisieren ließe?
 
phatt schrieb:
würde schon (sehr) viel Zeit investieren
...also...konkret...8h pro Tag 7Tage die woche für's nächste Jahr?
phatt schrieb:
okay also da werde ich dann wohl erst einmal lokal nach einer git Lösung Ausschau halten - gibt es da auch was, dass sich dann mit einem self hosted gitlab synchronisieren ließe?
Schau dir erstmal an was git ist und wie's funktioniert....es gibt nur ein git, das lässt sich überall mit synchronisieren gitlab, github...

frage mich wie du da bisher drum rum gekommen bist beim programmieren :mussweg:
 
phatt schrieb:
gibt es da auch was, dass sich dann mit einem self hosted gitlab synchronisieren ließe?
Kommt am Ende auf deinen Hoster an, die meisten Hoster geben dir nur FTP Zugriff.
In Github kann man Actions einrichten die automatisch nach einem Push ausgeführt werden, unter solchen Actions findet man auch welche die sich per FTP einloggen können und Dateien hochladen.

Die Github Alternativen haben mit Sicherheit auch solche Alternativen.
Ich selbst habe Drone.io auf meinem Server laufen, wenn ich zu Git pushe holt sich mein Server die Änderungen, startet und testet den Build und deployed ihn wenn alles passt.
CI/CD kommt aber nach dem coden, wenn du noch keine Erfahrung im programmieren hast sollte das relativ weit unten auf deiner liste stehen.


Es klingt jetzt nicht so als ob du viel Ahnung von PHP hast. Es kann zwar interessant sein deine eigene Suppe zu kochen, aber in den besten Fällen kommt dabei Spagetti-Code raus, im schlimmsten Fall unsicherer Spagetti-Code.
Ich würde dir Frameworks nahelegen, Laravel "erzwingt" sinnvollen Code, ist extrem gut Dokumentiert, hat viele 1rst Party Plugins und hat massiv viele Tutorial/Guides.
Bei Python fällt mir nur FastApi und Django ein, absolut nicht meine Sprache aber da wird es auch entsprechende Frameworks geben.

Ob PHP oder Python ist letztendlich egal, Python ist recht interessant außerhalb von Webdev (grade bei "Big Data" ist Python mit Pandas eine der Goto-Sprache, oder Pytorch für ML). Aber Python kannst du nicht wie PHP bei jedem beliebigem Hoster hosten.

Es ist extrem einfach in PHP zu einer MySQL DB zu connecten und Querries auszuführen. Die Basics solltest du dir da am besten auch einmal angucken bevor du Frameworks/ORMs komplett übernehmen lässt.
Man muss also nicht direkt zu Frameworks greifen, aber die Frameworks haben oft recht strikte Strukturen die dir helfen die Übersicht zu halten.
Grade PHP hat(te) so einen miesen Ruf weil jeder Hinz und Kunz Logik mit haufenweise Echos zusammengeworfen hat bis die index.php 5000 Zeilen lang war, lesbarer und sauberer Code ist sowas nicht.
 
IDE: JetBrains PHPStorm oder WebStorm kannste dir mal anschauen, ich nutze nix anderes mehr. Aber da scheiden sich dermaßen die Geister, weil das eigentlich Geschmackssache ist.

GIT: Du brauchst keinen Server, um GIT zu nutzen (das ist ja das tolle daran). Einfach

Bash:
git init .
git add .
git commit -m 'initial commit'

und zack, hast du eine rudimentäre Versionskontrolle. Backups kannste da auch auf n USB-Stick machen.

HOMEPAGE: Für ne einfache Homepage halte ich PHP sogar für nicht erforderlich. Es gibt so genannte static site generators... der verbreitetste dürfte wohl hugo sein, dafür hab ich mal ein Tutorial gemacht: https://pilabor.com/blog/2021/05/building-a-blog-with-hugo/
Falls du eher Mainstream machen willst geht natürlich auch Wordpress oder ein anderes CMS.
 
  • Gefällt mir
Reaktionen: jb_alvarado
Ev wäre NIkola was passendes? das liest Markdown Dateien aus und erstellt mit einem Template daraus auf knopfdruck statische html seiten die du beliebig wo hochladen kannst.
 
  • Gefällt mir
Reaktionen: andy_m4
phatt schrieb:
beim backend müsste ich mich halt noch etwas mehr in eine Programmiersprache reinfuchsen - bin da aber noch unschlüssig, ob jetzt PHP, Python oder was jetzt die richtige Sprache für mein vorhaben wäre.
Bei Visitenkarten-Webseiten die sozusagen nur statisch sind und wo serverseitig nix dynamisch generiert werden muss ist die Sprache so ziemlich egal. Weil Du musst ja nicht darauf achten, was auf der Serverseite unterstützt wird. Du brauchst auch keine ausgefeilten Frameworks. Was Du letztlich brauchst ist ein Programm was die benötigten HTML/CSS-Dateien ausspuckt. Und das geht in (fast) jeder Programmiersprache.

Ich würde also tendenziell da zu dem greifen, was Du am besten kannst. Wobei die Aufgabe selbst jetzt auch kein Hexenwerk ist, wo man besondere Skills braucht.

Alternativ kann man halt nach dem gucken, was es schon fertig zu dem Bereich gibt. Da wurde hier ja auch schon Einiges genannt.
 
netzgestaltung schrieb:
Ev wäre NIkola was passendes? das liest Markdown Dateien aus und erstellt mit einem Template daraus auf knopfdruck statische html seiten die du beliebig wo hochladen kannst.

Oder HUGO (HTML, Markdown, YAML/TOML, GO), man kann Git einbinden und auf Netlify hosten.

Eine andere Alternative: Wordpress selber hosten (XAMPP oder WAMP), das ganze Design machen - und dann mit dem "Simply Static" plugin eine statische Webseite draus machen (DB Funktionen gehen dann logischerweise nicht mehr, da gibt's aber Tricks.)
 
Zurück
Oben