Ta strona używa ciasteczek (cookies), dzięki którym nasz serwis może działać lepiej. Dowiedz się więcej OK, rozumiem

PHP ukrywanie linku

Zdecydowałeś się na tworzenie interaktywnych stron przy pomocy PHP? Chcesz w łatwy i szybki sposób zarządzać danymi na swojej stronie? Tutaj znajdziesz pomoc w napotkanych przy tym trudnościach.

PHP ukrywanie linku

Post 08.07.2017, 12:43:34

Witam
Czy da się zrobić taki myk żeby rzeczywiste polożenie ukryć przed użytkownikiem?
Przykład
Kod: Zaznacz cały
http://serwerwww.pl/unikatowy_token1/plik.zip
http://serwerwww.pl/unikatowy_token2/plik.zip

Chodzi mi o to żeby każdy użytkownik miał unikatowy token ale tak naprawde żeby i tak wszystko kierowało do jednego ukrytego katalogu
Kod: Zaznacz cały
plik.zip

Problem jest trochę bardziej rozbudowany ale ogólnie o takie coś mi chodzi że przyznam użytkownikowi token dzięki któremu będzie identyfikowany i będę mógł sprawdzać kto robi mi syf na serwerze.
sasiadstar
Posty: 123
Dołączył(a): 26.08.2016

Re: PHP ukrywanie linku

Post 08.07.2017, 12:52:28

Plik wrzucasz do katalogu, który jest niedostępny z zewnątrz (umieszczonego "powyżej" 'public_html' lub odpowiednio zabezpieczonego, np. przez .htacess). Następnie otwierasz ten plik w skrypcie i przesyłasz jego zawartość użytkownikowi, np. tak:
Kod: Zaznacz cały
$file = "tajny-katalog/plik.zip";
$fp = fopen($file, 'rb');
header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=plik.zip");
header("Content-Length: ".filesize($file));
fpassthru($fp);
exit;
Avatar użytkownikatoszcze
Bartosz Romanowski

SuperGod
SuperGod

Posty: 8897
Dołączył(a): 14.10.2003
Lokalizacja: Mysłowice

Re: PHP ukrywanie linku

Post 08.07.2017, 13:36:20

No i fajnie kumam mniej więcej o co chodzi.
Dzięki.
sasiadstar
Posty: 123
Dołączył(a): 26.08.2016

Re: PHP ukrywanie linku

Post 12.07.2017, 11:36:56

Mam jeszcze jedno pytanko.
Zrobiłem to wszystko działa świetnie, dodałem rejestrowanie w bazie danych(wiem kto ile razy i co robił).
Chciałem zrobic podobnie do pobierania obrazów ale zamiast tego ściąga mi pusty plik php
Kod: Zaznacz cały
http://domena.pl/images/logo.php?token=123456&logo=2X2.png

Problemem jest ta nieszczęsna kropka w rozszerzeniu bo bez niej vardump zwraca mi zmienne prawidłowo.
sasiadstar
Posty: 123
Dołączył(a): 26.08.2016

Re: PHP ukrywanie linku

Post 12.07.2017, 14:30:55

Pokaż kod.

A tak na marginesie: po co Ci nazwa pliku w URLu? Nie lepiej trzymać ją w bazie, a w URLach posługiwać się jakimiś identyfikatorami?
Avatar użytkownikatoszcze
Bartosz Romanowski

SuperGod
SuperGod

Posty: 8897
Dołączył(a): 14.10.2003
Lokalizacja: Mysłowice

Re: PHP ukrywanie linku

Post 13.07.2017, 10:05:05

nie bo taki format będzie odtwarzacz wysyłał do serwera
http://domena.pl/images/logo.php?token=123456&logo=
to ma byc jako link do serwera a player sobie podstawi resztę
sasiadstar
Posty: 123
Dołączył(a): 26.08.2016

Re: PHP ukrywanie linku

Post 13.07.2017, 12:34:27

Kod jest ten co mi podesłałeś , ale widzę że nawet jak podstawie na sztywno to ni huhu nie działa ściągnie plik ale nie da się go otworzyć.
Kod: Zaznacz cały
function pobierz_plik($logo)
{$file = dirname(__FILE__)."/images/stacje/2X2.png";
$fp = fopen($file, 'rb');
header("Content-Type: application/octet-stream"); //ani
header("Content-Disposition: attachment; filename=2X2.png");
header("Content-Length: ".filesize($file));
fpassthru($fp);
exit;}


sasiadstar
Posty: 123
Dołączył(a): 26.08.2016

Re: PHP ukrywanie linku

Post 14.07.2017, 10:42:12

Sprawdzałeś czy fopen() wykonuje się poprawnie?
Avatar użytkownikatoszcze
Bartosz Romanowski

SuperGod
SuperGod

Posty: 8897
Dołączył(a): 14.10.2003
Lokalizacja: Mysłowice

Re: PHP ukrywanie linku

Post 15.07.2017, 16:39:33

hmm a jak takie coś sprawdzić jak to obrazek, normalnie to bym vardumpem to zrobił
sasiadstar
Posty: 123
Dołączył(a): 26.08.2016

Re: PHP ukrywanie linku

Post 15.07.2017, 17:40:13

A chociaż spróbowałeś tym var_dumpem? ;) Poza tym chodziło mi o sprawdzenie czy funkcja fopen() w ogóle się poprawnie wykonuje - do tego wystarczy sprawdzić, czy nie zwróciła FALSE.
Avatar użytkownikatoszcze
Bartosz Romanowski

SuperGod
SuperGod

Posty: 8897
Dołączył(a): 14.10.2003
Lokalizacja: Mysłowice

Re: PHP ukrywanie linku

Post 29.07.2017, 21:26:05

Odświerzę temat troche późno(byłem na urlopie) ale może komuś się przyda.
Pozmieniałem na takie coś i wyświetla obrazki poprawnie.
header('Content-Type: image/jpeg');
readfile("../images/$logo");
sasiadstar
Posty: 123
Dołączył(a): 26.08.2016

Re: PHP ukrywanie linku

Post 07.09.2017, 18:39:51

A ja tak z czystej ciekawości. Po co ukrywać pliki przed użytkownikiem?
anonimwp
Posty: 8
Dołączył(a): 25.11.2012

Re: PHP ukrywanie linku

Post 10.09.2017, 04:02:15

Np. dla bezpieczeństwa, żeby ukryć istotne pliki - jakaś ważniejsza witryna www może być atakowana przez hakerów. Ale nawet nie musi to być kwestia bezpieczeństwa i nie muszą to być hakerzy np. przy hostingu niekoniecznie chcemy dawać użytkownikom realną ścieżkę, bo wtedy mając jedną ścieżkę mogliby przeszukiwać pliki innych ludzi. Albo np. chcemy ukryć wersje plików. Albo chcemy wspólne API z dynamicznie wystawianymi plikami np. z bazy (dzięki temu aplikację czy użytkownika nie obchodzi, skąd dany "zasób" pochodzi). Przydatne zwłaszcza przy aplikacjach REST-owych.
kabexxx
Posty: 195
Dołączył(a): 27.11.2011


Powrót do PHP i bazy danych


 


  • Podobne wątki
    Odpowiedzi
    Wyświetlone
    Ostatni post

Kto przegląda forum

Użytkownicy przeglądający ten dział: Ahrefs [Bot], Bing [Bot], Google Adsense [Bot] i 17 gości

Hosting, Domeny, SSL

Subskrypcja

Mamy 50681 zarejestrowanych użytkowników.
Najnowszy użytkownik: Calculatic


Nasi użytkownicy napisali:

  • 936067 wiadomości
  • w 246714 tematach

Najnowsze wpisy na blogu

Najnowsze artykuły

Najaktywniejsi (ostatnie 30 dni)