Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [Apache] Spis plików
Ka-lolek
post 8.06.2008, 16:15:55
Post #1





Grupa: Zarejestrowani
Postów: 104
Pomógł: 0
Dołączył: 26.01.2005

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


Witam,
jak zrobić żeby jeżeli w danym katalogu nie mam pliku index to po wejsciu do niego przez przegladarke zeby nie pojawial sie spis plikow tylko np. informacja, ze strona nie istnieje (tak jest na niektorych hostingach).
Najlepiej zeby ta informacja sie pojawiala tylko przy wchodzeniu z komputera zewnetrznego, a gdy wchodze z localhosta, tam gdzie jest zainstalowany apache to zeby normalnie pojawial sie spis plikow w danym katalogu

pozdrawiam
Go to the top of the page
+Quote Post
kallosz
post 8.06.2008, 16:17:05
Post #2





Grupa: Zarejestrowani
Postów: 272
Pomógł: 19
Dołączył: 29.07.2006

Ostrzeżenie: (10%)
X----


htaccess


--------------------
Pomogłem ?? Kliknij pomógł :) || kallosz.pl
-----------------------------------
Go to the top of the page
+Quote Post
Ka-lolek
post 8.06.2008, 16:22:03
Post #3





Grupa: Zarejestrowani
Postów: 104
Pomógł: 0
Dołączył: 26.01.2005

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


jezeli kazanoby mi strzelac, tez powiedzialbym, ze ten plik.. ale pytalem "jak" ;]
zwlaszcza jesli chodzi o ten podzial na polaczenia z localhost i zewnetrzne
Go to the top of the page
+Quote Post
Crozin
post 8.06.2008, 16:24:50
Post #4





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Możesz skorzystać z DirectoryIndex
Go to the top of the page
+Quote Post
webdice
post 8.06.2008, 16:29:05
Post #5


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




Plik .htaccess:

Kod
Options -Indexes
Go to the top of the page
+Quote Post
Ka-lolek
post 9.06.2008, 12:25:45
Post #6





Grupa: Zarejestrowani
Postów: 104
Pomógł: 0
Dołączył: 26.01.2005

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


no ok, znalazlem cos takiego:
http://blog.rabinek.pl/2007/05/26/lista-pl...rze-i-htaccess/
jest troche rozszerzone to o czym napisaliscie ale nadal nie iwem czy mozna zrobic aby z localhosta byly listowane a spoza niego nei?
Go to the top of the page
+Quote Post
webdice
post 9.06.2008, 12:43:26
Post #7


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




Kod
Deny form all
Allow from 127.0.0.1
Go to the top of the page
+Quote Post
Ka-lolek
post 9.06.2008, 13:14:33
Post #8





Grupa: Zarejestrowani
Postów: 104
Pomógł: 0
Dołączył: 26.01.2005

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


wpisalem w .htaccess
Kod
Options -Indexes
Deny form all
Allow from 127.0.0.1

jest blad:
Cytat
Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, webmaster@localhost and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.
Go to the top of the page
+Quote Post
webdice
post 9.06.2008, 13:40:51
Post #9


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




Pomyśl trochę. Zrobiłem literówkę.

Kod
Deny from all
Allow from 127.0.0.1


Jak dodasz:

Kod
Options -Indexes


to lokalnie też nie będzie listować plików.
Go to the top of the page
+Quote Post
Ka-lolek
post 9.06.2008, 14:00:05
Post #10





Grupa: Zarejestrowani
Postów: 104
Pomógł: 0
Dołączył: 26.01.2005

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


hmm ale nie do konca o to mi chodzi..
bo teraz nawet jak w katalogu jest index, to wyskakuje:
Cytat
Forbidden

You don't have permission to access / on this server.

chce cos takiego osiagnac, ze wchodzac z localhosta jak jest index, to laduje sie index, jak nie ma to laduje sie lista
a wchodzac z zewnatrz jak jest index to wyswietla index, jak nie ma to niech wyswietla forbidden albo 404.

Ten post edytował Ka-lolek 9.06.2008, 14:00:28
Go to the top of the page
+Quote Post
webdice
post 9.06.2008, 18:54:53
Post #11


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




To dziwne. Jak wchodzisz na localhost? Dla pewności, stwórz plik i dodaj w nim:

  1. <?php
  2. print $_SERVER['REMOTE_ADDR'];
  3. ?>


i podaj jakie IP Ci się wyświetla.

P.S. Możesz spróbować jeszcze:

Kod
Deny from all
Allow from localhost


ale to w zasadzie jest to samo.
Go to the top of the page
+Quote Post
phpion
post 9.06.2008, 19:11:40
Post #12





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




@webdicepl:
a czy przypadkiem kolejność regułek nie ma znaczenia?
Kod
Deny from all
Allow from 127.0.0.1

Chyba wszystkie żądania zostaną odrzucone już w pierwszej regułce.
Wydaje mi się, że takie coś powinno pomóc:
Kod
Allow from 127.0.0.1
Deny from all

czyli najpierw wpuszczamy z localhosta, a dopiero później blokujemy wszystko inne.
Go to the top of the page
+Quote Post
webdice
post 9.06.2008, 19:14:56
Post #13


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




~phpion nie mają znaczenia winksmiley.jpg. Sam tak mam u siebie i działa. Wchodząc przez http://localhost lub http://127.0.0.1 mam dostęp, wchodząc z http://212.244.142.x dostępu już nie mam. Więc obstawiam że autor wchodzi w inny sposób niż podałem w pierwszych dwóch przykładach.
Go to the top of the page
+Quote Post
phpion
post 9.06.2008, 19:15:57
Post #14





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Cytat(webdicepl @ 9.06.2008, 20:14:56 ) *
~phpion nie mają znaczenia winksmiley.jpg

A to przepraszam za zamieszanie wstydnis.gif

Ten post edytował phpion 9.06.2008, 19:16:20
Go to the top of the page
+Quote Post
Ka-lolek
post 12.06.2008, 12:15:06
Post #15





Grupa: Zarejestrowani
Postów: 104
Pomógł: 0
Dołączył: 26.01.2005

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


wchodze wpisujac "localhost"
Kod
i podaj jakie IP Ci się wyświetla.

wyswietla 127.0.0.1

@phpion zamiana kolejnosci nie ma znaczenia

dodam, ze ten blad 403 wyskakuje kiedy lacze sie wpisujac poprostu moj adres ip. (porty mam poprzekierowywane etc.), kiedy .htaccess jest pusty to wszystko smiga nalezycie

-------------------
@webdicepl (odnosnei Twojej ostatniej odpowiedzi)
wlasnie wchodzac przez localhost pisalem, ze mam dostep.. wchodzac przez moje zewn. ip juz nie mam (do niczego!) - ale przeciez:
Cytat
chce cos takiego osiagnac, ze wchodzac z localhosta jak jest index, to laduje sie index, jak nie ma to laduje sie lista
a wchodzac z zewnatrz jak jest index to wyswietla index, jak nie ma to niech wyswietla forbidden albo 404.


ponawiam pytanie

Ten post edytował Ka-lolek 9.06.2008, 19:39:09
Go to the top of the page
+Quote Post
pyro
post 12.06.2008, 12:35:52
Post #16





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

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


można zrobić coś takiego:

dodać regułę:

Kod
ErrorDoc 404 /404.php


gdzie 404.php to plik, na który będzie przekierowanie jeśli serwer napotka błąd 404 (brak pliku) i teraz:

404.php
  1. <?php
  2. if($_SERVER['REMOTE_ADDR'] != '127.0.0.1' || $_SERVER['REMOTE_ADDR'] != 'localhost') // dałem $_SERVER['REMOTE_ADDR'] != 'localhost' w wyniku problemów ( z doświadczenia)
  3. {
  4. echo '<p style="text-align: center; color: red; font-size: 20">404 - Nie odnaleziono pliku!</p>';
  5. }
  6. else
  7. {
  8. // swoje wylistowanie katalogu
  9. }
  10. ?>


--------------------
ET LINGUA EIUS LOQUETUR IUDICIUM
Go to the top of the page
+Quote Post
Ka-lolek
post 14.06.2008, 12:21:39
Post #17





Grupa: Zarejestrowani
Postów: 104
Pomógł: 0
Dołączył: 26.01.2005

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


oj, prawie dziala;p
zamiast ErrorDoc, to ErrorDocument
no i nie 404 tylko 403 w moim przypadku;p
ale nie o to chodzi.
wrzucilem do 403.php cos takiego:

  1. <?php
  2. if($_SERVER['REMOTE_ADDR'] != '127.0.0.1' || $_SERVER['REMOTE_ADDR'] != 'localhost') // dałem $_SERVER['REMOTE_ADDR'] != 'localhost' w wyniku problemów ( z doświadczenia)
  3. {
  4. echo '<p style="text-align: center; color: red; font-size: 20">404 - Nie odnaleziono pliku!</p>';
  5. echo ($_SERVER['REMOTE_ADDR']);
  6. }
  7. else
  8. {
  9. echo 'tu bedzie listing plikow';
  10. }
  11. ?>

i wchodzac z localhosta wyrzuca napis "404 - nie odnaleziono pliku" zamiast "tu bedzie listing plikow' (jezeli wchodze spoza localhosta to tez wyrzuca "404- nie odnaleziono pliku"
zeby sie upewnic, ze wchodze z localhosta wyrzucilem jeszcze zawartosc $_SERVER['REMOTE_ADDR'] i jak byk jest 127.0.0.1


hmm ;>?

dobra, to jakoś działa po zamianie != na == (chociaz to dziwne zachowanie)

ale jak wykonac listing plikow zeby listowalo mi pliki z katalogu do ktorego chcialem wejsc..
wpisujac
  1. <?php
  2. foreach (glob("*.*") as $filename) {
  3. echo "$filename \n";
  4. }
  5. ?>

listuje mi glowny katalog;/.

Ten post edytował Ka-lolek 14.06.2008, 10:34:19
Go to the top of the page
+Quote Post
pyro
post 14.06.2008, 17:47:36
Post #18





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

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


tu juz pokombinuj sam... pobieraj katalog z url'a i go listuj czy coś... pomyśl


--------------------
ET LINGUA EIUS LOQUETUR IUDICIUM
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: 24.06.2025 - 00:14