php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 14.10.2010, 12:07  
Neuer Benutzer
 
Benutzerbild von WishuKaiser
 
Registriert seit: 14.10.2010
Beiträge: 25
PHP-Kenntnisse:
Fortgeschritten
WishuKaiser zeigte ein beschämendes Verhalten in der Vergangenheit
Standard Bildaufruf immer zählen

Hallo zusammen,

ich betreibe seit geraumer Zeit einen ImageHoster (WishuLoad, siehe Signatur). Hier gibt es auch einen Mitgliederbereich, indem man seine Bilder verwalten kann. Die Aufrufe der Ordner zu zählen ist kein Problem, da diese nur über die viewer.php aufgerufen werden können, doch die Bilder machen mir zu schaffen.

Ich könnte es zwar so einbauen, dass beim Aufruf der viewer.php das dieser gezählt wird, allerdings werden die Bilder auch eingebunden und direkt verlinkt. Was man eben so mit Bildern macht. Auch die Direktverlinkung könnte ich per .htaccess "abfangen", aber dann habe ich noch das Hauptproblem.

Wie frage ich also Bilder ab, welche in Foren, Blogs, Communitys und anderen Websites eingebunden werden und somit keinerlei Verlinkung mehr zu WishuLoad haben?

Ich hoffe es wird ersichtlich, was ich meine.

Ich danke schon mal für die Hilfe.

Gruß
Wishu
__________________
Der komplette Text den Sie vor dieser Zeile lesen, ist per Zufall generiert worden und muss nicht zwingend Sinn ergeben.
Wishu.design | WishuLoad - The Dark Imagehosting | Wishu-Blog
WishuKaiser ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 14.10.2010, 12:19  
Erfahrener Benutzer
 
Benutzerbild von lstegelitz
 
Registriert seit: 07.09.2009
Beiträge: 4.005
PHP-Kenntnisse:
Fortgeschritten
lstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nett
Standard

Wenn sich jemand bei dir ein Bild klaut und das auf seinem Server hostet, hast du verloren.

Bei einer Verlinkung auf DEINEN Server helfen dir die access.log Files bei der Auswertung (für das Bild wird dann eine GET Anfrage auf deinem Server einschlagen, jedesmal wenn es auf einer Seite betrachtet wird).
__________________
Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.
lstegelitz ist offline   Mit Zitat antworten
Alt 14.10.2010, 12:33  
Neuer Benutzer
 
Benutzerbild von WishuKaiser
 
Registriert seit: 14.10.2010
Beiträge: 25
PHP-Kenntnisse:
Fortgeschritten
WishuKaiser zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

Zitat:
Zitat von lstegelitz Beitrag anzeigen
Wenn sich jemand bei dir ein Bild klaut und das auf seinem Server hostet, hast du verloren.
Das ist mir durchaus klar. Ich meine mit keinerlei Verlinkung lediglich, dass es nur als <img /> eingebunden ist, allerdings nicht verlinkt auf den Viewer oder Ähnliches.

Zitat:
Zitat von lstegelitz Beitrag anzeigen
Bei einer Verlinkung auf DEINEN Server helfen dir die access.log Files bei der Auswertung (für das Bild wird dann eine GET Anfrage auf deinem Server einschlagen, jedesmal wenn es auf einer Seite betrachtet wird).
Ist das nicht verdammt Performancelastig? Ist das die einzige Möglichkeit? Und vor Allem, wenn die Antworten Nein und Ja sind (In der Reihenfolge), gibt es dafür eine Anleitung, bzw. etwas, dass mir das Thema genauer erklärt?

Danke schon mal, dass du dir die zeit genommen hast.

Gruß
Wishu
__________________
Der komplette Text den Sie vor dieser Zeile lesen, ist per Zufall generiert worden und muss nicht zwingend Sinn ergeben.
Wishu.design | WishuLoad - The Dark Imagehosting | Wishu-Blog
WishuKaiser ist offline   Mit Zitat antworten
Alt 14.10.2010, 12:45  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

1. access-log wird normalerweise immer geschrieben, da musst du also nur die Datei einmal auslesen und die Statistik generieren.
2. Du kannst das Bild auch durch eine PHP Datei schleusen, also per PHP dann entsprechende Header und die Bilddaten senden. Damit kannst du dann auch in der DB die Anzahl an Zugriffen erhöhen, prüfen ob der User zugreifen darf oder ähnliches tun.
Flor1an ist offline   Mit Zitat antworten
Alt 14.10.2010, 12:49  
Neuer Benutzer
 
Benutzerbild von WishuKaiser
 
Registriert seit: 14.10.2010
Beiträge: 25
PHP-Kenntnisse:
Fortgeschritten
WishuKaiser zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

Der zweite Punkt klingt interessant. Ist es dann nicht aber eine Bilddatei nach dem Format Bildname.php? Das könnte man doch dann nicht unbedingt in Foren einbinden. Zumindest phpBB hat da arge Probleme.

Die Zugriffe sollen übrigens für den User gezählt und dann in seinem Mitgliedsbereich angezeigt werden. Nur, falls das nicht ersichtlich wurde.

Gruß
Wishu
__________________
Der komplette Text den Sie vor dieser Zeile lesen, ist per Zufall generiert worden und muss nicht zwingend Sinn ergeben.
Wishu.design | WishuLoad - The Dark Imagehosting | Wishu-Blog
WishuKaiser ist offline   Mit Zitat antworten
Alt 14.10.2010, 13:00  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Du kannst ja per mod_rewrite auch ein bildname.jpg draus machen was dann auf bildname.php geleitet wird oder ähnliches.

Am besten ist sowas: bild_<id>.jpg und das wird auf bild.php?id=<id> weitergeleitet.
Flor1an ist offline   Mit Zitat antworten
Alt 14.10.2010, 13:02  
Neuer Benutzer
 
Benutzerbild von WishuKaiser
 
Registriert seit: 14.10.2010
Beiträge: 25
PHP-Kenntnisse:
Fortgeschritten
WishuKaiser zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

Ok, dann danke ich schon mal für die Hilfe und mach erstmal ein paar Testläufe. Wenn ich noch Fragen habe, dann komme ich nochmal her
__________________
Der komplette Text den Sie vor dieser Zeile lesen, ist per Zufall generiert worden und muss nicht zwingend Sinn ergeben.
Wishu.design | WishuLoad - The Dark Imagehosting | Wishu-Blog
WishuKaiser ist offline   Mit Zitat antworten
Alt 14.10.2010, 13:28  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

Server vorrausgesetzt bietet sich für das senden selbst mod_x_filesend für den apachen/lighttpd an.

Mit dem Mod übernimmt der webserver das komplette senden inklusive passender header, etags (abhängig von Einstellungen, dateityp, ... etc), etc wie wenn der webserver sie nativ ausliefern würde, man hat nicht ewig viele php-prozesse laufen, muss nicht über php datei lesen/ausgeben, ...

Da man damit JEDE Datei die der Webserver lesen kann ausliefern kann, muss sowas allerdings ordentlich implementiert sein UND der Webserver nicht noch als shared-hosting für andere Leute genutzt werden, weil man damit vhost/user-übergreifend an Daten rankommen kann.

apache: https://tn123.org/mod_xsendfile/
lighttpd: http://redmine.lighttpd.net/wiki/1/X-LIGHTTPD-send-file
robo47 ist offline   Mit Zitat antworten
Alt 14.10.2010, 13:51  
Neuer Benutzer
 
Benutzerbild von WishuKaiser
 
Registriert seit: 14.10.2010
Beiträge: 25
PHP-Kenntnisse:
Fortgeschritten
WishuKaiser zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

So, ich hab das jetzt mal so gemacht:
PHP-Code:
<?php
if($_GET["pic"])
  {
    
$endung substr (strrchr ($_GET["pic"], "."), 1);
    if(
$endung == 'jpg')
      {
        
$endung 'jpeg';
      }
    
header("Content-Type: image/".$endung);
    if(
file_exists($_GET["pic"])){
      
readfile($_GET["pic"]);
    }
    else
      {
        
readfile('fehler.png');
      }
  }
  else
    {
      echo 
"Fehlermeldung, die noch nichts aussagt, weil es ja nur ein Testscript ist.";
    }
?>
Funktioniert auch soweit mit JPEG, GIF und PNG. Hier wird natürlich noch nichts gezählt, aber das ist ja das kleinere Problemchen ^^

Jetzt ist allerdings die Frage, wie es nun weiter geht. Mit ModRewrite kenne ich mich leider noch nicht so gut aus. Kann mir da jemand unter die Arme greifen?
Nur um kurz die Struktur zu klären. Derzeit werden Bilder über http://wishuload.de/images/Bildname.jpg aufgerufen. In Zukunft wird es dann wohl die Adresse http://wishuload.de/images.php?i=Bildname.jpg sein.

Das Ziel ist jetzt, dass man trotz des Skripts die Bilder noch in eine Website einbinden kann ohne, dass es irgendwelche Probleme gibt.

Gruß
Wishu
__________________
Der komplette Text den Sie vor dieser Zeile lesen, ist per Zufall generiert worden und muss nicht zwingend Sinn ergeben.
Wishu.design | WishuLoad - The Dark Imagehosting | Wishu-Blog
WishuKaiser ist offline   Mit Zitat antworten
Alt 14.10.2010, 14:33  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

Funktioniert so dann unter Umständen auch um deine PHP-Scripte, Zugangsdaten und weitere lesbare dateien zu "klauen", weil man via GET alles übergeben kann.

Die Bilder alle in einem Unterordner wird dir wenn du mal mal viele Dateien hast zum verhängnis (Limits des dateisystems von dateien pro ordner, performance mit sehr vielen dateien in einem ordner und gewisse tools die bei größeren zahlen irgendwann nicht mehr einfach so mitspielen wollen, ... ) und alles über die hauptdomain auszuliefern auch, weil du so nie skalieren kannst, immer alles über den hauptwebserver geht (oder via einem reverse-proxy-setup, was man bei sowas wohl eher vermeidet, weil bottleneck immer der erste webserver bleibt) .....

Mach dir vielleicht erstmal Gedanken über die ganzen Dinge bevor du überhaupt irgendwas änderst, solange du wenig user/bilder hast, verkraftet man eher eine umstellung der urls/links, wie wenn man mal die ersten paar hundert GB hat! Die Struktur sollte dann aber auch durchdacht sein im hinblick auf Skalierung, etc.
robo47 ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Zahlen austauschen im String Kurd Laßwitz PHP Tipps 2010 6 07.02.2010 18:30
[Erledigt] zahlen mit komma auslesen und als array oder so speichern php-gamer PHP Tipps 2010 11 06.02.2010 22:41
Zufallszahlen mit mt_rand() aber keine doppelten zahlen wie stell ich das an? JackD PHP Tipps 2009 42 30.09.2009 18:57
mit array_count_values($array) einen bestimmten Wert zählen flual2000 PHP Tipps 2009 2 22.04.2009 14:12
"Klicks " zählen halskrause PHP Tipps 2009 5 08.04.2009 09:51
[Erledigt] db einträge zählen oder hochzählen lassen? mistermint PHP Tipps 2009 2 27.03.2009 14:56
zufalls zahlen kombination Marti95. PHP Tipps 2009 34 23.02.2009 20:21
Formular -> Zahlen -> Währung -> mySQL der_Angler Datenbanken 3 11.02.2009 14:51
[Erledigt] Eingabe auf Zahlen prüfen martl666 PHP Tipps 2008 22 15.09.2008 16:16
[Erledigt] MySQL Daten Auswerten / Zählen Ortus Solis PHP Tipps 2008 8 10.08.2008 19:42
[gelöst] Zahlen sortieren mit Varchar moose Datenbanken 8 21.07.2008 13:53
Zahlen (Double) formatiert darstellen Marie PHP Tipps 2007 2 24.01.2007 22:32
Zahlen effektiv verschlüsseln Jacks Rache PHP Tipps 2006 20 10.07.2006 01:44
Zahlen zusammenzählen Sonja PHP Tipps 2006 11 28.03.2006 11:07

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
bildaufruf zählen, aufrufe einer php datei zählen, php aufrufe zählen, bild per php ausliefern, php bildaufruf zählen, aufruf einer webseite zählen, php zählen wie oft ein bild angezeigt wurde, aufrufe der mich seite zählen, aufrufe zählen php, php bilder über php seite ausliefern, php bild laden zählen, zugriffe zählen unter access 2010, php zugriffe auf bild zählen, php zugriffe hochzählen, ordner zugriffe zählen, bilder mit php ausliefern, aufrufe einer seite zählen php, htaccess zugriffe zählen, php bilder verwalten, php bilder zählen und nur eines anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 22:36 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum