Ich antworte Ihnen mit einigen Ratschlägen, da ich mich vor einigen Monaten in einer ähnlichen Situation wie Sie befand.
Sie verwenden also Apache zum Hosten Ihrer Website. Das ist gut. Damit Python gut mit Apache zusammenspielt, werden Sie mod_wsgi verwenden wollen, und zwar aus den Gründen, die andere bereits genannt haben: Die Trennung von Belangen macht es besser als cgi und mod_python wird nicht mehr unterstützt.
Ihr Eindruck, dass der Verzicht auf ein Framework Sie näher an die Programmierung in "reinem" Python heranbringt, ist jedoch ein wenig daneben. Ich war der gleichen Meinung und habe sowohl mit Django als auch nur mit mod_wsgi experimentiert. Lassen Sie mich Ihnen mitteilen, was ich herausgefunden habe.
Mod_wsgi ist eine Implementierung des WSGI-Standards, der in PEP 333 . Die Unterscheidung zwischen der Implementierung und dem Standard ist wichtig. Erstens, weil sie bedeutet, dass WSGI-konforme Anwendungen über Implementierungen hinweg funktionieren. Noch wichtiger ist jedoch, dass sie etwas Wichtiges darüber aussagt, was WSGI leisten soll. WSGI ist nämlich als Standard für das Schreiben von Frameworks gedacht. Aus dem PEP:
die Einfachheit der Implementierung für den Autor eines Frameworks ist nicht dasselbe wie die Benutzerfreundlichkeit für den Autor einer Webanwendung
und
Das Ziel von WSGI ist es, die einfache Verbindung von bestehenden Servern und Anwendungen oder Frameworks zu erleichtern, und nicht, ein neues Web-Framework zu schaffen.
Ich sage nicht, dass Sie nicht etwas mit wsgi machen sollten, aber Sie sollten erwarten, dass Sie eher ein Framework als eine Anwendung schreiben. Wenn Sie daran interessiert sind, ein einfaches Framework zu schreiben diese Anleitung ist der Ort, an dem ich angefangen habe.
Wenn Sie jedoch nur eine Website erstellen möchten, sollten Sie sich eines der von anderen vorgeschlagenen Frameworks ansehen. Sie werden immer noch Python-Code schreiben, aber die Autoren haben hart daran gearbeitet, den Code, den Sie schreiben, näher an die Erstellung von Websites als an die Erstellung von Frameworks zu bringen. Ich persönlich habe Django verwendet, und sobald es einmal in Betrieb war, war es ziemlich einfach, interessante Anwendungen zu erstellen. Außerdem ist die Dokumentation sehr gut, und es gibt ein gutes Tutorial. aquí . Davon abgesehen ist Django sehr umfangreich, und wenn Sie etwas Minimalistisches suchen, habe ich viel Gutes über Flask gehört, aber es gibt auch viele andere Optionen.