Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Przepisanie adresu przy użyciu mod_rewrite
Forum PHP.pl > Forum > PHP
Patrykk_
Witam, chciałbym się dowiedzieć coś na temat .htaccess

Chciałbym przepisać taki adres np.:

Kod
http://mojastrona.pl/download/Nazwapliku.rar


Na taki:

Kod
http://mojastrona.pl/download/file/jakies losowe cyfry


Jak to zrobić? smile.gif Pomożecie? smile.gif

Próbowałem tak zrobić:

Do pliku .htaccess który znajduje się w głównym katalogu skryptu Wordpress dodałem:

Kod
RewriteBase /download/
RewriteRule ^Nazwapliku.rar /file/([0-9]+)$  [L]


i wygląda to tak:

Kod
# BEGIN WordPress
<IfModule mod_rewrite.c>
Options FollowSymLinks
RewriteEngine On

RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

RewriteBase /download/
RewriteRule ^Nazwapliku.rar /file/([0-9]+)$  [L]
</IfModule>

# END WordPress



Niestety nie działa... Po przejściu w adres:

Kod
http://mojastrona.pl/download/Nazwapliku.rar

Nie zmienia się na:

Kod
http://mojastrona.pl/download/file/jakies losowe cyfry
Mlodycompany
źle źle źle. Apache nie wygeneruje Ci losowego ciągu znaków. To co napisałeś miało by sens jakby miało działać w 2 stronę, tzn aby adres http://strona.com/file/34523465234562345 zamieniało na http://strona.com/file/Nazwa.rar Coś takiego da radę za pomocą htaccess. Wiem o co Ci chodzi i najprościej zrobić pliczek php i do niego kierować za pomocą htaccess wszystkie żądania plików i w nim zrobić translacje cyferek na fizyczną nazwe pliku i przekierowywać na adres, albo odrazu wysyłać plik do przeglądarki.
Patrykk_
hmm a jak to zrobić? pomożesz? od czego zacząć?
Mlodycompany
najpierw trzeba stworzyć regułe w htaccess, która każde wywołanie np. http://strona.pl/file/[0-9]+ przepuści przez jakiś plik php. W tym pliku php zrobić translacje z cyferek z url na ścieżkę do pliku, zażąglować nagłówkami i wysłać plik do przeglądarki. Wujek G napewno posiada w swoich zasobach przykładowe kody jak to zrobić
Patrykk_
okey dzięki za informacje smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.