Rewrite in htaccess greift nicht
Tach,
ich habe hier einen Apache laufen, in der .htaccess folgender Inhalt:
order allow,deny
allow from all
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} ^ChinaClaw [OR]
RewriteRule ^(.*) http://%{REMOTE_ADDR}/ [R=301,L]
RewriteCond %{HTTP_REFERER} viagrashop4usa\.com [NC]
RewriteRule .* - [F]
Jetzt lese ich in der Log das nur einmal 404 ausgegeben wird, dann 200 :
95.132.122.122 - - [08/Feb/2012:03:19:01 +0100] "GET /register.php HTTP/1.0" 404 2271 "http://www.viagrashop4usa.com" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)"
95.132.122.122 - - [08/Feb/2012:03:19:02 +0100] "GET / HTTP/1.0" 200 12119 "http://meineadresse/" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)"
95.132.122.122 - - [08/Feb/2012:03:19:03 +0100] "GET /index.php HTTP/1.0" 302 - "http://meineadresse/index.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)"
95.132.122.122 - - [08/Feb/2012:03:19:04 +0100] "GET /news.php HTTP/1.0" 200 138468 "http://meineadresse/news.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)"
95.132.122.122 - - [08/Feb/2012:03:19:05 +0100] "GET /register.php HTTP/1.0" 200 34574 "http://meineadresse/register.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)"
95.132.122.122 - - [08/Feb/2012:03:19:06 +0100] "GET /securimage_show.php HTTP/1.0" 200 3220 "http://meineadresse/register.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)"
95.132.122.122 - - [08/Feb/2012:03:19:07 +0100] "GET /index.php HTTP/1.0" 200 12119 "http://meineadresse/index.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)"
95.132.122.122 - - [08/Feb/2012:03:19:08 +0100] "GET /index.php HTTP/1.0" 200 12119 "http://meineadresse/index.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)"
95.132.122.122 - - [08/Feb/2012:03:19:09 +0100] "GET /index.php HTTP/1.0" 302 - "http://meineadresse/index.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)"
95.132.122.122 - - [08/Feb/2012:03:19:10 +0100] "GET /news.php HTTP/1.0" 200 138468 "http://meineadresse/news.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)"
Habe ich was falsch gemacht, oder liegt es einfach daran das sich der Referer ändert ?
Danke für Antworten !
ich habe hier einen Apache laufen, in der .htaccess folgender Inhalt:
order allow,deny
allow from all
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} ^ChinaClaw [OR]
RewriteRule ^(.*) http://%{REMOTE_ADDR}/ [R=301,L]
RewriteCond %{HTTP_REFERER} viagrashop4usa\.com [NC]
RewriteRule .* - [F]
Jetzt lese ich in der Log das nur einmal 404 ausgegeben wird, dann 200 :
95.132.122.122 - - [08/Feb/2012:03:19:01 +0100] "GET /register.php HTTP/1.0" 404 2271 "http://www.viagrashop4usa.com" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)"
95.132.122.122 - - [08/Feb/2012:03:19:02 +0100] "GET / HTTP/1.0" 200 12119 "http://meineadresse/" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)"
95.132.122.122 - - [08/Feb/2012:03:19:03 +0100] "GET /index.php HTTP/1.0" 302 - "http://meineadresse/index.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)"
95.132.122.122 - - [08/Feb/2012:03:19:04 +0100] "GET /news.php HTTP/1.0" 200 138468 "http://meineadresse/news.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)"
95.132.122.122 - - [08/Feb/2012:03:19:05 +0100] "GET /register.php HTTP/1.0" 200 34574 "http://meineadresse/register.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)"
95.132.122.122 - - [08/Feb/2012:03:19:06 +0100] "GET /securimage_show.php HTTP/1.0" 200 3220 "http://meineadresse/register.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)"
95.132.122.122 - - [08/Feb/2012:03:19:07 +0100] "GET /index.php HTTP/1.0" 200 12119 "http://meineadresse/index.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)"
95.132.122.122 - - [08/Feb/2012:03:19:08 +0100] "GET /index.php HTTP/1.0" 200 12119 "http://meineadresse/index.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)"
95.132.122.122 - - [08/Feb/2012:03:19:09 +0100] "GET /index.php HTTP/1.0" 302 - "http://meineadresse/index.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)"
95.132.122.122 - - [08/Feb/2012:03:19:10 +0100] "GET /news.php HTTP/1.0" 200 138468 "http://meineadresse/news.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)"
Habe ich was falsch gemacht, oder liegt es einfach daran das sich der Referer ändert ?
Danke für Antworten !
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 180226
Url: https://administrator.de/contentid/180226
Ausgedruckt am: 22.11.2024 um 06:11 Uhr
1 Kommentar
Hi,
ob du was falsch gemacht hast, kann ich dir nicht so direkt sagen - ich tu mich mit Rewrites auch immer etwas schwer.
Aber ein zwei Dinge fielen mir auf:
Apache-HTTP - mod_rewrite - RewriteCond
w3c - HTTP/1.1 Status Code Definitions
~Arano
ob du was falsch gemacht hast, kann ich dir nicht so direkt sagen - ich tu mich mit Rewrites auch immer etwas schwer.
Aber ein zwei Dinge fielen mir auf:
- Das [OR] dient doch zum "verknüpfen" von mehrere Bedingungen __hintereinander__. Bei dir folgt nach dem [OR] bereits eine Regel.
- 404 ist der Statuscode von "Not found", 403 wäre der von "Forbidden" ! Also scheint das sowieso schon mal nicht zu funktionieren...
- Das der Referer sich ändert ist ja klar, schließlich war er vor dem __zweitem__ Seitenaufruf bereits einmal auf deiner eigenen und nennt diese auch als Referer.
- Warum testest du nicht den USER_AGENT - wie in dem Test davor auch - auf die existens von "FunWebProducts" ? Das scheint sich nicht zu ändern und die beiden ließen sich dann auch mit [OR] verbinden ;)
- Die erste "Weiterleitung" auf die IP des Aufrufers... was soll das bringen !?
Danke für die Antworten !
- Noch ist nicht gesagt, das es mehrere Antworten geben wird :-P
- Bedanken kannst du dich hinterher wenn es geklappt hat, du uns davon berichtest und die Frage auf gelöst setzt ;)
Apache-HTTP - mod_rewrite - RewriteCond
w3c - HTTP/1.1 Status Code Definitions
~Arano