Seite 1 von 2

Frage zu RewriteCond

Verfasst: 03.02.2009, 09:39
von catcat
Moinsen!

Ich hab ne alte .htaccess, darin stand:

Code: Alles auswählen

RewriteCond %{HTTP_HOST} !^www.meine_domain.com$ 
RewriteRule ^(.*)$ http://www.meine_domain.com/$1 [L,R=301]
Also die einfache Umleitung von ohne "www" zu mit "www". Soweit klar.

Nun habe ich beim letzten update ne .htacces bekommen, da steht das hier drin:

Code: Alles auswählen

RewriteCond %{HTTP_REFERER} !^http://meine_domain.com/.*$      [NC]
RewriteCond %{HTTP_REFERER} !^http://meine_domain.com$      [NC]
RewriteCond %{HTTP_REFERER} !^http://www.meine_domain.com/.*$      [NC]
RewriteCond %{HTTP_REFERER} !^http://www.meine_domain.com$      [NC]
RewriteRule .*\.(jpg|jpeg|gif|png|bmp)$ - [F,NC]
Aber was, zum Henker, machen diese Regeln? Das ist doch sinnlos, oder?
(Und was bewirkt die letzte Zeile? Ich komm da nicht dahinter.)

EDIT:
Also Eines hab ich grade rausgefunden...ehm.
Wenn ich das hier:

Code: Alles auswählen

RewriteCond %{HTTP_REFERER} !^http://meine_domain.com/.*$      [NC]
RewriteCond %{HTTP_REFERER} !^http://meine_domain.com$      [NC]
RewriteCond %{HTTP_REFERER} !^http://www.meine_domain.com/.*$      [NC]
RewriteCond %{HTTP_REFERER} !^http://www.meine_domain.com$      [NC]
mit dem hier ersetze:

Code: Alles auswählen

RewriteCond %{HTTP_HOST} !^www.meine_domain.com$ 
RewriteRule ^(.*)$ http://www.meine_domain.com/$1 [L,R=301]
dann werden keine Grafiken mehr in diesem Shop angezeigt :o

Verfasst:
von




Erfolgreiche und optimale Nutzung mit Magento Shopsystemen! Nutzen Sie unsere jahrelange Erfahrung mit Magento Shopsystemen und lassen Sie sich beraten!


Lesen Sie die wichtigsten Magento-Optimierungsmaßnahmen oder kontaktieren Sie uns direkt unter: 0511 / 300325-0


Re: Frage zu RewriteCond

Verfasst: 03.02.2009, 11:45
von Mork vom Ork
catcat hat geschrieben:

Code: Alles auswählen

RewriteCond %{HTTP_REFERER} !^http://meine_domain.com/.*$      [NC]
RewriteCond %{HTTP_REFERER} !^http://meine_domain.com$      [NC]
RewriteCond %{HTTP_REFERER} !^http://www.meine_domain.com/.*$      [NC]
RewriteCond %{HTTP_REFERER} !^http://www.meine_domain.com$      [NC]
RewriteRule .*\.(jpg|jpeg|gif|png|bmp)$ - [F,NC]
Aber was, zum Henker, machen diese Regeln? Das ist doch sinnlos, oder?
(Und was bewirkt die letzte Zeile? Ich komm da nicht dahinter.)
RewriteCond %{HTTP_REFERER} !^https://meine_domain.com/.*$ [NC]
Falls die vom Browser übermittelte, verweisende URL nicht zwischen Anfang und Ende aus „meine_domainXcom/irgendwas“ besteht (es folgen drei in der Tat überflüssige Muster nach gleichem Schema, die sich teils mit dem ersten überschneiden, in jedem Falle aber von einem Nicht-Anfänger in das erste wunderbar eingepasst worden wären), dann:

RewriteRule .*\.(jpg|jpeg|gif|png|bmp)$ - [F,NC]
Verbiege alles, das auf irgendwas, gefolgt von einem Punkt gefolgt von jpg, jpeg, gif, png oder bmp endet, in eine Fehlermeldung Typ Zugriff verboten. Und da der Zugriff eh verboten ist, steht bei der Ziel-URL schlicht ein einsamer Bindestrich statt irgendeines Pfades.

Das NC in den eckigen Klammern steht für not case sensitive, also Groß- und Kleinschreibung im Muster nicht beachten.

Kurz: Das ist ein Binde-gefälligst-meine-Bilder-nicht-in-deine-Seiten-ein-Türsteher. Man sollte den auch so zusammenfassen können:

RewriteCond %{HTTP_REFERER} !>https://www.example.com
RewriteRule \.(jpe?g|gif|png|bmp)$ - [F]

Verfasst: 03.02.2009, 13:42
von catcat
Genial - DANKE!

Das konnte sogar ich verstehen^^
Und hübsch bunt isses auch noch.

Verfasst:
von

Hochwertiger Linkaufbau bei ABAKUS:
  • Google-konformer Linkaufbau
  • nachhaltiges Ranking
  • Linkbuilding Angebote zu fairen Preisen
  • internationale Backlinks
Wir bieten Beratung und Umsetzung.
Jetzt anfragen: 0511 / 300325-0

Verfasst: 03.02.2009, 13:54
von jackwiesel
Und hübsch bunt isses auch noch.
Ich hab mich schon gefragt, was er heute geraucht hat... :lol:

Verfasst: 03.02.2009, 14:39
von ins0
job schön erklärt
jackwiesel hat geschrieben: Ich hab mich schon gefragt, was er heute geraucht hat... :lol:
:D warum soll er was geraucht haben? Du siehst doch die Farben (bzw. Wir) ^^ ;) :lol:

Verfasst:
von
Content Erstellung von ABAKUS Internet Marketing
Ihre Vorteile:
  • einzigartige Texte
  • suchmaschinenoptimierte Inhalte
  • eine sinnvolle Content-Strategie
  • Beratung und Umsetzung
Jetzt anfragen: 0511 / 300325-0

Verfasst: 03.02.2009, 14:55
von catcat
*pst! Das hab ich auch schon getippert, habs aber dann doch gelöscht... :D

Aber ich will das auch haben!

EDIT:
Ich nehme mir schon seit Jahren vor, endlich mal dieses zeugs zu lernen... aber irgendwie kommt immer was dazwischen. Meistens Bier.

Nochmal augegraben

Verfasst: 25.05.2009, 14:07
von catcat
Icvh muss das Thema nochmal ausbuddeln, weil ich wieder mal keinen Plan von nix habe :roll:

Also: Ich habe dieses Zeugs da in der .htaccess. Das funktioniert auch prima.

Code: Alles auswählen

RewriteCond %{HTTP_HOST} !^www.example.com$ 
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]
RewriteCond %{HTTP_REFERER} !^http://example.com/.*$      [NC]
RewriteCond %{HTTP_REFERER} !^http://example.com$      [NC]
RewriteCond %{HTTP_REFERER} !^http://www.example.com/.*$      [NC]
RewriteCond %{HTTP_REFERER} !^http://www.example.com$      [NC]
RewriteRule .*\.(jpg|jpeg|gif|png|bmp)$ - [F,NC]
Nu ist das ein magento-multishop-Dingens.
wenn der user auf www.example.com geht sieht er den example-shop, wenn er über beispiel.de kommt, sieht er den beispiel-shop.
Sollte er sehen... tut er aber nicht... zumindest nicht bei mir :P

Ich habe die beispiel.de Domain konnektiert auf example.com/beispiel-shop/, lande aber immer auf example.com.

Das geht mir so langsam auf den Senkel^^
ich habs versucht mit ner Subdomain, mit Parked Domain, mit AddOn Domain über cPanel... ich lande immer wieder auf example.com

Ich habs mit biertrinken versucht... sogar OHNE biertrinken: Nix :(

Bewirkt der obige Kot irgendwas in der Richtung, das es verhindert, eine andere URL als example.com zu erreichen?

Verfasst: 25.05.2009, 15:01
von profo
Ein oder mehrere RewriteConds werden immer mit RewriteRule beendet. Du hast da also zwei Rewrite-Blöcke:

=== 1 - Weiterleitung nach www.example.com ===

"Leite alle Anfragen, die nicht an www.example.com gehen, an www.example.com weiter."

Code: Alles auswählen

RewriteCond %{HTTP_HOST} !^www.example.com$
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301] 
Beispiel: https://example.com/guten-tag.html => https://www.example.com/guten-tag.html

=== 2 - Grafiken sperren, wenn sie nicht von Deinem Shop verlinkt sind ===

"Alle Grafiken sperren, außer wenn sie einen Referer haben, der unterhalb von example.com oder www.example.com liegt"

Code: Alles auswählen

RewriteCond %{HTTP_REFERER} !^http://example.com/.*$      [NC]
RewriteCond %{HTTP_REFERER} !^http://example.com$      [NC]
RewriteCond %{HTTP_REFERER} !^http://www.example.com/.*$      [NC]
RewriteCond %{HTTP_REFERER} !^http://www.example.com$      [NC]
RewriteRule .*\.(jpg|jpeg|gif|png|bmp)$ - [F,NC]
Beispiel:https://www.deppenshop.coco/catcats-bild.jpg => 403 gesperrt

Wenn ich mich nicht irre sperrt das die Grafiken auch in Browsern, die keinen Referer weitergeben. Insofern gefällt mir der zweite Block nicht. Wenn Du nicht Unmengen von Deppenshops hast, die Deine Bilder abgreifen, kannst Du den diesen ganzen Kladderadatsch auch wieder rausschmeißen.

===
Bewirkt der obige Kot irgendwas in der Richtung, das es verhindert, eine andere URL als example.com zu erreichen?
Sí - claro. Der Zweck der htaccess oben ist zum einen, eine Weiterleitung auf die von Dir präferierte Domain (www.example.com). Gut gegen DC. Und zum anderen, das Sperren der Grafiken, wenn sie fremdverlinkt werden. Vermutlich soll das gegen Content-Diebstahl helfen...

Re: Nochmal augegraben

Verfasst: 25.05.2009, 15:02
von Mork vom Ork
catcat hat geschrieben:

Code: Alles auswählen

RewriteCond %{HTTP_HOST} !^www.example.com$ 
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]
Nu ist das ein magento-multishop-Dingens.
wenn der user auf www.example.com geht sieht er den example-shop, wenn er über beispiel.de kommt, sieht er den beispiel-shop.
Sollte er sehen... tut er aber nicht... zumindest nicht bei mir :P
[…]
Bewirkt der obige Kot irgendwas in der Richtung, das es verhindert, eine andere URL als example.com zu erreichen?
Ja, du hast da eine Ich-will-mit-wehwehweh-angesprochen-werden-Weiterleitung drin, die sich ausdrücklich auf example.com bezieht.

Ich kenne den Magento-Kram nicht, aber deine Konfiguration kommt mir merkwürdig vor, warum hast du Laden 2 als Unterverzeichnis von Laden 1 eingerichtet? Entweder kann Magento mit mehreren Domains umgehen, dann müssten die Domains aus demselben Verzeichnis heraus funktionieren, oder Magento kann das nicht, dann hat Laden 2 nichts in Laden 1 zu suchen. Vielleicht gibt's da noch einen Haken, aber fürs Erste würde ich sagen, dass du da aufräumen solltest.

So oder so, deine Will-www-Weiterleitung müsste sich etwas allgemeiner fassen lassen, so dass sie mit jeder www-losen Domain funktioniert:

RewriteCond %{HTTP_HOST} !^www\.
RewriteRule (.*) https://www.%{HTTP_HOST}/$1 [L,R=301]

Die Bildersperre müsstest du ebenfalls erweitern, so du alles dort belässt, wo es derzeit liegt:

RewriteCond %{HTTP_REFERER} !>https://www.example.com
RewriteCond %{HTTP_REFERER} !>https://www.beispiel.de
RewriteRule \.(jpe?g|gif|png|bmp)$ - [F]

Re: Nochmal augegraben

Verfasst: 25.05.2009, 15:56
von catcat
Mork vom Ork hat geschrieben: ...
Ich kenne den Magento-Kram nicht, aber deine Konfiguration kommt mir merkwürdig vor, warum hast du Laden 2 als Unterverzeichnis von Laden 1 eingerichtet? Entweder kann Magento mit mehreren Domains umgehen, dann müssten die Domains aus demselben Verzeichnis heraus funktionieren, oder Magento kann das nicht, dann hat Laden 2 nichts in Laden 1 zu suchen. Vielleicht gibt's da noch einen Haken, aber fürs Erste würde ich sagen, dass du da aufräumen solltest.
...
Jep! Warum hab ich das eigentlich als Unterverzeichnis gemacht und nicht gleich inner root?
Weil: magento kann mit mehreren Domains umgehen... aber ich anscheinend nicht^^

Ich troll mich mal und spiele mal mit meiner vhost.conf rum. Für heute hab ich mich genügend blamiert... :oops:

Verfasst: 25.05.2009, 16:36
von mgutt
Wenn ich die Regeln richtig verstehe, verhindern die die Darstellung von Grafiken, wenn der Referer nicht Deine Domain enthält. Das müsste ja bedeuten, dass keine Grafik angezeigt wird, wenn der Besucher z.B. über Google kommt.

Warum überhaupt die Anti-Diebstahl-Regel? In der heutigen Zeit hast Du doch sicher ne Traffic-Flatrate :-?

Verfasst: 25.05.2009, 16:40
von Mork vom Ork
mgutt hat geschrieben:Wenn ich die Regeln richtig verstehe, verhindern die die Darstellung von Grafiken, wenn der Referer nicht Deine Domain enthält. Das müsste ja bedeuten, dass keine Grafik angezeigt wird, wenn der Besucher z.B. über Google kommt.
Bei einer Anfrage an X ist die verweisende URL immer jene, die auf X verweist. Das Protokoll macht keinen Unterschied, ob es sich bei X um ein HTML-Dokument handelt, ein Bild oder sonst irgendwas - es gilt immer der direkte Weg.

Bei den in eine Seite eingebundenen Bildern landet in der Referer:-Zeile dementsprechend die URL der einbindenden Seite, jene mit den <img>-Elementen, nicht die, über die der Besucher auf die Seite gekommen ist (in deinem Beispiel: Google).
Warum überhaupt die Anti-Diebstahl-Regel? In der heutigen Zeit hast Du doch sicher ne Traffic-Flatrate
Wie bei allen Urheberrechtsgeschichten geht es wohl weniger um die Kosten, denn ums Prinzip.

Verfasst: 25.05.2009, 16:44
von catcat
Es geht nicht so um den traffic, mgutts.
Es nervt mich gewaltig, das ich Fotografen und Models bezahle, damit ich gute Bilder habe und dann finde ich die Bilder auf den ebay-shops meiner tollen Konkurrenten wieder.

Die machen sich nicht mal mehr die Mühe die Bilder von meiner Site zu ziehen, mein Logo rauszuretouschieren und selbst hochzuladen. Und dann verkaufen die Jungs mit meinen Produktfotos Seidenschals, die aus 100% Polyester bestehen.

Kaum hab ich ne Handvoll abgemahnt und abkassiert, kommt schon wieder die nächsten Schlaumeier und machen dasselbe.
OK: Ich verdiene daran ganz gut... mein Anwalt auch... aber ich versuch das halt wenigstens bei den noobs einzudämmen.

Verfasst: 25.05.2009, 16:45
von Mork vom Ork
catcat hat geschrieben:Und dann verkaufen die Jungs mit meinen Produktfotos Seidenschals, die aus 100% Polyester bestehen.
Ich weiß gar nicht, was du gegen Seidenpolyester hast ;)

Verfasst: 25.05.2009, 16:50
von mgutt
Mork vom Ork hat geschrieben:
mgutt hat geschrieben:Wenn ich die Regeln richtig verstehe, verhindern die die Darstellung von Grafiken, wenn der Referer nicht Deine Domain enthält. Das müsste ja bedeuten, dass keine Grafik angezeigt wird, wenn der Besucher z.B. über Google kommt.
Bei einer Anfrage an X ist die verweisende URL immer jene, die auf X verweist. Das Protokoll macht keinen Unterschied, ob es sich bei X um ein HTML-Dokument handelt, ein Bild oder sonst irgendwas - es gilt immer der direkte Weg.
Stimmt. Bleibt aber immer noch das Problem, dass es Besucher gibt, die den Referer dezimieren. z.B. über entsprechende "Schutzsoftware", die den Surfer anonymer machen soll. In meinen Foren habe ich so ein paar User.

@catcat
Deine Argumentation hat nichts mit dem Schutz zu tun. Wenn jemand das Logo rausretuschiert, hat er das Bild heruntergeladen und nicht fremd eingebettet. Die Cond schützt Dich aber nur vor dem Einbetten. Runterladen und damit klauen geht nach wie vor ohne Unterschied. Besser wäre da schon die Deaktivierung der rechten Maustaste, wobei ich von sowas auch nichts halte, weil ich z.B. viele Links per rechts in Tabs öffne.