Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [htaccess] ukrywanie plików w public_html a profile użytkowników
lisekkpl
post 26.08.2014, 12:06:31
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 26.08.2014

Ostrzeżenie: (0%)
-----


Jak zablokować możliwość używania login.php, register.php itd. przez www.nazwastrony.pl/login.php, tak żeby tylko działało www.nazwastrony.pl/accounts/login. Linki do profilów tworzą się po sleszu. Podczas rejestracji dozwolone jest używanie kropek więc jeśli ktoś zrobi użytkownika login.php to nie będzie przenosić na profil tylko na stronę logowania
jeśli ktoś jeszcze nie rozumie to linki do profilów lecą tak:
www.nazwastrony.pl/profile.php?username=lisekpl jest zamieniane na www.nazwastrony.pl/lisekpl
ale po wpisaniu
www.nazwastrony.pl/login.php przenosi na stronę logowania zamiast na profil
logowanie ma się odbywać tylko przez www.nazwastrony.pl/accounts/login!!
Wszystkie pliki znajdują się w public_html. Proszę pomóżcie
tutaj moje htaccess (nie dorobiłem kropki w profilach bo nie wiem jak to zrobić):
  1. RewriteEngine On
  2. RewriteCond %{REQUEST_FILENAME} !-f
  3. RewriteCond %{REQUEST_FILENAME} !-d
  4. RewriteRule ^hashtag/([A-Za-z0-9_]+)$ hashtag.php?hashtag=$1
  5. RewriteRule ^([A-Za-z0-9_]+)$ profile.php?username=$1
  6. RewriteRule ^accounts/logout logout.php
  7. RewriteRule ^accounts/login login.php
  8. RewriteRule ^accounts/index index.php
  9. RewriteRule ^accounts/register register.php
Go to the top of the page
+Quote Post
by_ikar
post 26.08.2014, 12:45:32
Post #2





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

Ostrzeżenie: (0%)
-----


Kod
RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(logout|login|index|register)\.php$ /accounts/$1 [R=301,QSA,L]
RewriteRule ^hashtag/([\w]+)$ hashtag.php?hashtag=$1 [L]
RewriteRule ^([\w\.]+)$ profile.php?username=$1 [L]
RewriteRule ^accounts/logout$ logout.php [L]
RewriteRule ^accounts/login$ login.php [L]
RewriteRule ^accounts/index$ index.php [L]
RewriteRule ^accounts/register$ register.php [L]


EDIT: na przyszłość http://eriz.pcinside.pl/weblog/mod_rewrite...wiazac-208.html

Ten post edytował by_ikar 26.08.2014, 12:46:09
Go to the top of the page
+Quote Post
lisekkpl
post 27.08.2014, 12:59:07
Post #3





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 26.08.2014

Ostrzeżenie: (0%)
-----


Nic nie moge zrobić na stronie np jak wpisze adres strony to próbuje wejść na profil użytkownika index.php a jak wchodzę na www.nazwastrony.pl/accounts/login to przeglądarka wywala że jest pętla przekierowań
Go to the top of the page
+Quote Post
by_ikar
post 27.08.2014, 15:05:39
Post #4





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

Ostrzeżenie: (0%)
-----


No to nie rozumiem co ty tam masz namieszane. Generalnie samo to że ustawiłeś

Kod
RewriteCond %{REQUEST_FILENAME} !-f


powinno wystarczyć w przypadku przejścia na adresy index.oho, login.php etc. Tego typu regułki które łapią wszystko muszą być na samym końcu przepisywania regułek. Spróbuj to przenieść na sam koniec:

Kod
RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(logout|login|index|register)\.php$ /accounts/$1 [R=301,QSA,L]
RewriteRule ^hashtag/([\w]+)$ hashtag.php?hashtag=$1 [L]
RewriteRule ^accounts/logout$ logout.php [L]
RewriteRule ^accounts/login$ login.php [L]
RewriteRule ^accounts/index$ index.php [L]
RewriteRule ^accounts/register$ register.php [L]
RewriteRule ^([\w\.]+)$ profile.php?username=$1 [L]


i sprawdź czy to coś zmieni. Pewnie łapie kropkę z tej nieszczęsnej regułki, jako kropkę z pliku. No ale przecież masz wcześniej regułkę od plików.. Dlatego tego typu zabaw nie powinno się robić w htaccess tylko na poziomie routingu..
Go to the top of the page
+Quote Post
lisekkpl
post 27.08.2014, 15:29:39
Post #5





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 26.08.2014

Ostrzeżenie: (0%)
-----


nadal to samo
mogę prosić o linka do jakichś prostych routerów? może popróbuje z tym
Go to the top of the page
+Quote Post
by_ikar
post 27.08.2014, 16:39:57
Post #6





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

Ostrzeżenie: (0%)
-----


http://longren.io/basic-routing-in-php-with-altorouter/
Go to the top of the page
+Quote Post
lisekkpl
post 28.08.2014, 12:54:51
Post #7





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 26.08.2014

Ostrzeżenie: (0%)
-----


mogę prosić o pomoc w konfiguracji tego aby działało w ten sposób jak to opisałem w temacie
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 7.06.2025 - 03:36