Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [inne]brak możliwości wywołania strony błędu 404
peb
post
Post #1





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 3.11.2011

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


Witam serdecznie i od razu przepraszam za trywialność pytania ale uderzam głową w mur.
Wymyśliłem sobie na pracę do szkoły stronkę, oparłem się o szablon znaleziony w sieci i zasadniczo wszystko gra gdyby nie mały kłopot.
Na początek kod:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4.  
  5.  
  6. </head>
  7.  
  8. <body>
  9.  
  10.  
  11. <div class="a1">
  12. <div><h2>Przykładowa strona</h2></div>
  13. <div class="menu">
  14. <a href="start">Strona główna</a>
  15. <a href="link1">LINK 1</a>
  16. <a href="link2">LINK 2</a>
  17. <a href="link3">LINK 3</a>
  18. <a href="link4">LINK 4</a>
  19. </div>
  20. <div class="tresc">
  21.  
  22.  
  23. <?php
  24. //** Tutaj jest wstawiana treść z plików zewnętrznych
  25.  
  26. if(empty($_GET['id']) or $_GET['id']=="start"){
  27. include("dane/start.html");
  28. }
  29.  
  30. if($_GET['id']=="link1"){
  31. include("dane/link1.html");
  32. }
  33.  
  34. if($_GET['id']=="link2"){
  35. include("dane/link2.html");
  36. }
  37.  
  38. if($_GET['id']=="link3"){
  39. include("dane/link3.html");
  40. }
  41.  
  42. if($_GET['id']=="link4"){
  43. include("dane/link4.html");
  44. }
  45.  
  46. ?>
  47.  
  48. </div>
  49.  
  50. </div>
  51. <?php
  52. include('dane/footer.html');
  53. ?>
  54.  
  55. </body>
  56. </html>


Teraz plik .htaccess

Kod
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www. [NC]
RewriteRule ^(.*)$ http://www.domena.pl/$1 [L,R=301]

RewriteCond %{REQUEST_URI} ^\/index.php$
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^(.*)$ http://domena.pl/ [L,R=301]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-z0-9_-]+) index.php?id=$1 [L]


A teraz do rzeczy


Cokolwiek nie wpiszę do przeglądarki nie mogę uzyskać błędu 404, chodzi o to, że zawsze wyświetla mi menu i pustą stronę ale nigdy błąd a chciałbym aby stworzyć własną stronę błędu i dopisać do .htaccess
Po drugie za nic nie mogę zmusić do przekierowania z adresu "/index.php?id=link1" na "/link1"

To chyba z grubsza tyle, z góry dziękuję za pomoc a przede wszystkim za wyrozumiałość i poświęcony czas na czytanie kłopotów nastalotka:)

Pozdrawiam
Powód edycji: [nospor]:
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
skowron-line
post
Post #2





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


2.
Kod
RewriteRule ^([a-z0-9_-]+) index.php?id=$1 [L]
to przekierowuje odwrotnie do tego co chcesz osiągnąć więc odwróć ten proces a uzyskasz zamierzony wynik.
1.
Skoro wszystkie podstrony dołączasz do szablonu który posiada już nagłówek i stopkę to zawsze będziesz go miał.


--------------------
I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy.

QueryBuilder, Mootools.net, bbcradio1::MistaJam
http://www.phpbench.com/
Go to the top of the page
+Quote Post
peb
post
Post #3





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 3.11.2011

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


Cytat(skowron-line @ 3.11.2011, 08:59:56 ) *
Kod
RewriteRule ^([a-z0-9_-]+) index.php?id=$1 [L]
to przekierowuje odwrotnie do tego co chcesz osiągnąć więc odwróć ten proces a uzyskasz zamierzony wynik.

Z tym, że widzisz przy moim zapisie link w kodzie może wyglądać następująco <a href="link1">Link1</a> i w przeglądarce uzyskuje http://www.domena.pl/link1 przy odwróceniu zapisu muszę w kodzie linkować index.php?id=link1 i w przeglądarce mam taki właśnie link a chodzi mi o przyjazny URL:)

Cytat(skowron-line @ 3.11.2011, 08:59:56 ) *
Skoro wszystkie podstrony dołączasz do szablonu który posiada już nagłówek i stopkę to zawsze będziesz go miał.

Co zatem proponujesz żeby mój problem się rozwiązał?

Ten post edytował peb 3.11.2011, 09:19:10
Go to the top of the page
+Quote Post
skowron-line
post
Post #4





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


1. Racja mój błąd, i chyba <a href="/link1">Link1</a> takie linki smile.gif
2.
  1. <?php
  2.  
  3. if(isset($_GET['id']))
  4. {
  5. include('naglowek');
  6.  
  7. switch($_GET['id'])
  8. {
  9. case 'link1':
  10. include('dane/link1');
  11. break;
  12. }
  13.  
  14. include('stopka');
  15. }
  16. else
  17. {
  18. include('404.html');
  19. }
  20.  
  21. ?>

coś w tą stronę, można to jeszcze uprościć no ale na to sam już wpadniesz.


--------------------
I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy.

QueryBuilder, Mootools.net, bbcradio1::MistaJam
http://www.phpbench.com/
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 Aktualny czas: 22.08.2025 - 09:14