![]() ![]() |
Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 578 Pomógł: 6 Dołączył: 21.07.2008 Ostrzeżenie: (0%)
|
Mam strukturę katalogów -> katalog główny (domena) / public / css itd.
w katalogu głównym mamy plik index.php który wczytuje plik (szablon) z katalogu public/ index.html Kłopot w tym, że aby strona index wyświetlała prawidłowo ścieżka do style, zdjęcia itd. musi być np.: <link rel="stylesheet" href="/public/css/style.css"> -> public/css/style.css Jak sprawić, aby przy takiej strukturze katalogów strona index ładowała style przy ścieżce css/style.css tak, aby nie było widać (w domenie) że pliki znajdują się katalogu public? Coś jak w Symfony, wchodzimy na adres główny, ale pliki są w katalogu public / assets / css (img, js i inne) jednak po wyświetlaniu źródła strony widzimy ścieżkę assets i dalej... nie widzimy katalogu public. Jak przygotować taką strukturę katalogów strony? |
|
|
|
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 1 885 Pomógł: 231 Dołączył: 20.03.2005 Skąd: Będzin Ostrzeżenie: (0%)
|
Proste.
Skoro public/ to twoja strona domeny, to musisz ustawić na hostingu aby adres do strony WWW była pod katalog public/ a nie np. moja_strona/ Czyli jeżeli scieżka dla strony to (zgaduję): /home/malinaa/websites/malina.pl/public/ ale do FTP już adres jest: /home/malinaa/websites/malina.pl/ Ten post edytował Tomplus 2.12.2020, 12:43:10 |
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 6 381 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%)
|
A inna sprawa że np linkowanie tak jak to pokazujesz dla styli, nie ma prawa wyjść ponad public.
|
|
|
|
Post
#4
|
|
|
Grupa: Zarejestrowani Postów: 1 885 Pomógł: 231 Dołączył: 20.03.2005 Skąd: Będzin Ostrzeżenie: (0%)
|
To właśnie napisałem. dla styli, dla index.html/php katalog public nie będzie istniał.
Żeby odwołać się do tego co jest niżej to będziesz musiał w index.php napisać np.: require_once '../moj_inny_skrypt.php'; |
|
|
|
Post
#5
|
|
|
Grupa: Zarejestrowani Postów: 578 Pomógł: 6 Dołączył: 21.07.2008 Ostrzeżenie: (0%)
|
Nie prawda. Doszedłem...
RewriteRule ^$ public/ [L] RewriteRule (.*) public/$1 [L] i problem rozwiązany. Poza tym stworzyłem przy okazji wzorzec MVC i wyszedł mi interesujący autorski Framework -> CMS Ten post edytował Malinaa 5.12.2020, 01:34:20 |
|
|
|
Post
#6
|
|
|
Grupa: Zarejestrowani Postów: 1 885 Pomógł: 231 Dołączył: 20.03.2005 Skąd: Będzin Ostrzeżenie: (0%)
|
Tutaj można wciąż dostać się do plików przez domena.pl/public/style.css
|
|
|
|
Post
#7
|
|
|
Grupa: Zarejestrowani Postów: 578 Pomógł: 6 Dołączył: 21.07.2008 Ostrzeżenie: (0%)
|
Z podanym rozwiązaniem skrypt działa prawidłowo, więc jest ok.
A jak można zabezpieczyć tu dostęp do katalogu public ? Jak zabezpieczyć dostęp do katalogu public i innych katalogów znajdujących się w katalogu głównym domeny tak, aby dostęp (z zewnątrz) był tylko do zawartości katalogu public? Po wpisaniu adresu: 1. css/style.css -> ok wyświetlam plik 2. public/css/style.css -> nie wyświetlam (katalog zabezpieczony "nie widoczny") Czy jest sposób, aby nie można było dostać się do pliku style.css wpisując ścieżkę 2? |
|
|
|
![]() ![]() |
|
Aktualny czas: 21.12.2025 - 21:59 |