Logowanie wejść na adresy swojej strony

Odpowiedz Nowy wątek
2015-04-26 21:14

Rejestracja: 5 lat temu

Ostatnio: 3 lata temu

0

Witam

Czy jest możliwe dołączenie do swojej strony www jakiegoś elementu, który automatycznie zapisywałby do logu wszystkie adresy, w które ktoś wszedł z mojej strony, a nawet błędne próby wejść? Na przykład na stronie xxx.strefa.pl jak miałbym obrazek 1.jpg to automatycznie zapisywałoby mi, że ktoś wszedł na adres xxx.strefa.pl/1.jpg. Jakby ktoś się pomylił i wpisał xxx.strefa.pl/12.jpg (zamiast 1.jpg) to też by zapisywało próbę takiego wejścia.

Pozostało 580 znaków

2015-04-26 21:19
Moderator

Rejestracja: 12 lat temu

Ostatnio: 1 godzina temu

Lokalizacja: Wrocław

0

To się nazywa logi serwera :P


edytowany 1x, ostatnio: Patryk27, 2015-04-26 21:19

Pozostało 580 znaków

2015-04-27 08:24

Rejestracja: 4 lata temu

Ostatnio: 3 lata temu

0

A ten log gdzie ma się zapisywać?

Pozostało 580 znaków

2015-04-27 08:27
Moderator

Rejestracja: 12 lat temu

Ostatnio: 1 godzina temu

Lokalizacja: Wrocław

0

Zależy jak masz skonfigurowany serwer.


Pozostało 580 znaków

2015-04-27 08:41

Rejestracja: 4 lata temu

Ostatnio: 3 lata temu

0
$("a").click(function() {
var e = $this.attr("href");
    $.ajax({
        url: "jakis.php", //tutaj php, który wpisze ci adres do loga
        type: "POST",
        data: "dokad=" + e,
        return false;
    echo '});
echo '});

Po stronie serwera (plik jakis.php)

$tresc_loga = $_POST['dokad']."\n"; 

    // plik do zapisu 
    $file = "c:\\moje_logi\\log_zdarzen.txt";

    // uchwyt pliku, otwarcie do odczytu i dopisania 
    $fp=fopen("$file", "r+"); 

    // dodanie do zmiennej dane poprzedniej zawartości pliku 
    $tresc_loga=$tresc_loga."\r\n".fread($fp, filesize($file)); 

    // ustawienie kursora na początku pliku 
    rewind($fp); 

    // blokada pliku do zapisu 
    flock($fp, 2); 

    // zapisanie danych do pliku 
    fwrite($fp, $tresc_loga); 

    // odblokowanie pliku 
    flock($fp, 3); 

    // zamknięcie pliku 
    fclose($fp); 

Jak masz wykupiony serwer to odpowiednio skonfiguruj ścieżkę do loga

edytowany 1x, ostatnio: GoreLam, 2015-04-27 08:43

Pozostało 580 znaków

2015-04-27 08:44
Moderator

Rejestracja: 12 lat temu

Ostatnio: 1 godzina temu

Lokalizacja: Wrocław

0

To jest najgorsze możliwe rozwiązanie spośród, kurczę, wszystkiego :v


Pozostało 580 znaków

2015-04-27 08:44
Moderator

Rejestracja: 13 lat temu

Ostatnio: 1 godzina temu

Lokalizacja: Rzeszów

0

@GoreLam: Nic z tego:

  1. Wymaga javascriptu
  2. Nie zadziała na plikach do których nie ma dostępu (404, 403)
  3. Jemu chodzi o zwykły access log serwera.

Pozostało 580 znaków

2015-04-27 08:55

Rejestracja: 4 lata temu

Ostatnio: 3 lata temu

0

Zadziała, ale...

access_log nie zawsze można skonfigurować jeżeli wykupujemy usługę hostingu. Jeżeli można to zazwyczaj są to logi za jakiś okres. Pokazałem jedno z możliwych rozwiązań.

W wielu serwisach są to pliki zapisane w jakimś miejscu, wystarczy je sobie co jakiś czas zgrać.... - kaczus 2015-04-27 09:15
A nie wystarczy dodać przez ftp plik access.log i error.log? - X-on 2015-05-05 14:15

Pozostało 580 znaków

2015-04-27 09:31
Moderator

Rejestracja: 12 lat temu

Ostatnio: 1 godzina temu

Lokalizacja: Wrocław

0

To nie zadziała.
1) robisz dziurę w swoim oprogramowaniu, wystarczy Ci pospamować ręcznie otwierając jakis.php z jakimś długim tekstem i relatywnie szybko skończy Ci się miejsce na dysku.
2) "logujesz" w ten sposób tylko otwarcia linków, a nie zasoby.

Daruj sobie hosting - wykup VPSa w OVH za dyszkę miesięcznie, wystarczy, a ponadto skonfigurujesz sobie jak chcesz :P


edytowany 1x, ostatnio: Patryk27, 2015-04-27 09:32

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0