Seite 1 von 1

.htaccess (mod_rewrite und subdomains)

Verfasst: 23.03.2007, 23:02
von GreatStuff
Hallo Forenuser!

Ich besitze mehrere Websites, die über subdomains erreichbar sind. Jede Website, also jede Subdomain, hat eine eigene .htaccess Datei (die Dateien liegen auf ein und demselben Webspace in unterschiedlichen Ordnern) Mit .htaccess wollte ich folgende Dinge erreichen:

Zu erst mal Standard Domains definieren (hat soweit funktioniert),
für die Hauptdomain habe ich das folgendermaßen gemacht:

Code: Alles auswählen

RewriteCond %{HTTP_HOST} !^www\.greatstuff\.at$ 
RewriteRule ^(.*)$ http://www.greatstuff.at$1 [L,R=301]
und für die subdomains so:

Code: Alles auswählen

RewriteCond %{HTTP_HOST} !^forum\.greatstuff\.at$ 
RewriteRule ^(.*)$ http://forum.greatstuff.at/$1 [L,R=301]
Das funktioniert soweit, bei eingabe von greatstuff.at erfolgt die weiterleitung zu www.greatstuff.at und bei eingabe von zB forum.greatstuff.at gelangt man auch zu forum.greatstuff.at.

Das Problem allerdings: Gebe ich www.greatstuff.at/forum (der pfad zum forum ohne subdomain) als Adresse ein, werde ich zu https://forum.greatstuff.at//home/.site ... /web/forum weitergeleitet, diesen Pfad gibt es natürlich nicht.
Was ich bräuchte, wäre eine Weiterleitung von greatstuff.at/forum zu forum.greatstuff.at - Leider schlugen meine Veruche, das zu erreichen, fehl. Ich würde mich freuen, wenn mir in diesem Punkt jemand helfen könnte.

Weiters wollte ich erreichen, dass man bei der eingabe von www.greatstuff.at/index.html oder forum.greatstuff.at/index.php zu www.greatstuff.at bzw. forum.greatstuff.at weitergeleitet wird. Auch hier schlugen meine Versuche fehl... Ist eine derartige Einstellung mit .htaccess überhaupt möglich?

Ich habe allerdings gelesen, dass es möglich sei, von www.forum.greatstuff.at zu forum.greatstuff.at weiterzuleiten (www.forum.greatstuff.at liefert 404). Diese Einstellung erscheint mir besonders brauchbar, da bestimmt nicht jeder Internetsurfer weiß, dass man (meine?) subdomains nicht mit www in der adresse erreichen kann.

Des Weiteren habe ich auch davon gelesen, dass man sich mit htaccess ein wenig vor Spambots und dergleichen Ungeziefer schützen kann. Ich habe dazu beispielsweise diesen Code gefunden, den ich in die .htaccess meines Forum eingetragen habe, weil er vor einem bestimmten Wurm schützen soll. Soll ich diesen Code wirklich in der .htaccess vom Forum belassen oder sollte ich ihn lieber in die .htaccess im root Verzeichnis eintragen? Ich weiß nämlich nicht, wie mehrere .htaccess Dateien in diesem Fall gehandhabt werden, über eine kurze Aufklärung würde ich mich sehr freuen! Außerdem wollte ich spambots per User Agent ausperren, ich habe dazu diesen code verwendet:

Code: Alles auswählen

RewriteCond %{HTTP_USER_AGENT} ^.*Whacker.*$ [OR] 
RewriteCond %{HTTP_USER_AGENT} ^EmailCollector [OR]
RewriteCond %{HTTP_USER_AGENT} ^EmailSiphon [OR] 
RewriteCond %{HTTP_USER_AGENT} ^EmailWolf [OR] 
RewriteCond %{HTTP_USER_AGENT} ^.*FileHound.*$ [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*TurnitinBot.*$ [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*JoBo.*$ [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*adressendeutschland.*$
RewriteRule ^.* - [F]
Da diese Liste relativ kurz ist, wollte ich sie um diese erweitern:
https://www.mb-media.at/bots-spider-per ... perren.php (unter dem rechteck mit orangen rahmen ist ein downloadlink, den wollte ich nicht direkt verlinken). Die Liste habe ich versucht in meine .htaccess einzubinden, was in einem error 500 endete. Allerdings hat die .htaccess, so wie ich sie von der angebenen Seite hinuntergeladen habe, dies ebenfalls getan. Es ist mir ein Rätsel, wieso es nicht funktioniert hat, denn die Syntax hat in meinen Augen genauso ausgesehen wie im obigen Beispiel...

Was haltet ihr allgemein davon, dass ich mehrere .htaccess dateien verwende? Sollte man das in meinem Fall so machen oder alles in eine datei reinschreiben? Wenn ich nur für www.greatstuff.at die standarddomain definiere, ist es mit dem code den ich gepostet habe nämlich nicht möglich, die subdomains mit der richtigen adresse zu erreichen (zB forum.greatstuff.at ist dann nicht möglich), darum bin ich überhaupt auf die Idee mit mehreren Dateien gekommen.

Tut mir wirklich leid wegen den vielen anfängerfragen, ich habe es wirklich alleine versucht, bin aber leider auf keinen grünen zweig gekommen :oops: Über etwas Nachhilfe in Sachen htaccess würde ich mich riesig freuen!

mfg
Stefan

Verfasst:
von

Verfasst: 03.03.2011, 21:36
von Iq100
WOW ... Das ist echt mies, seit 2006 hat kein einziger eine Antwort gegeben?! Da musst ich mich glatt mal hier anmelden :D

Falls es dich noch interessiert:

Ich würde an deiner Stelle die Bot's, Ip's etc. in der Rootdatei filtern oder in der Serverkonfiguration. Wobei mir hierbei die .htaccess-Variante eher zusagt.

Das umleiten auf Subdomains erreichst du via Alias ebenfalls in der Serverkonfiguration. Wobei du bei mehreren Projekten Virtualhosts einrichten solltest (Wird ebenfalls in der Serverkonfiguration gemacht).