Skocz do zawartości

Błąd w htaccess


raf_79

Rekomendowane odpowiedzi

Witam wszystkich

Niestety mam gdzieś błąd i nei potrafie zlokalizować go pomimo iż wypróbowałem wszystkie możliwości jakie znalazłem naforum ;)

mam taki kod w htaccess

RewriteEngine On

Options FollowSymLinks

RewriteRule ^index.html$ index.php [L]

RewriteRule ^index-([0-9]*).html$ index.php?id=$1 [L]

i w linkach tworze tak :

<A HREF=\"index-{$wiersz[0]}.html\">{$wiersz[1]}</A>

wyskakuje mi błąd:

Bad Request

Your browser sent a request that this server could not understand.

Invalid URI in request GET /~hta/index-2.html HTTP/1.1

czy może mi ktoś wskazaćdroge ?? a próbowałem też wpisać RewriteBase/ ale wtedy mi wyświetlało strone z katalogu wyżej

(sprawdzam kod na krasnalu i mi wyświetlało główną strone krasnala)

z góry dzięki za pomoc

pozdrawiam

Odnośnik do komentarza
Udostępnij na innych stronach

...a próbowałem też wpisać RewriteBase/  ale wtedy mi wyświetlało strone z katalogu wyżej

Czesc...

nie wiedząc gdzie masz umieszczone pliki trudno jest cokolwiek napisac. Po tym cytowanym zdaniu wnioskuje, ze robisz cos na podkalogu a nie na ROOT. Jesli tak to sprawdz to:

RewriteRule ^index.html$ /podkatalog/index.php [L]

RewriteRule ^index-([0-9]*).html$ /podkatalog/index.php?id=$1 [L]

oczywiście miast '/podkatalog/' wpisz tu właściwą nazwę podkatalogu...

i jesli nie zadziala to moze wtedy dodatkowo

RewriteBase /

Pozdrawiam

[edyta]

Oczywiscie ten .htaccess powinien byc umieszczony w katalogu a nie na root

Odnośnik do komentarza
Udostępnij na innych stronach

jak próbowałem zrobić z tymi ściazkami to wyskakiwał błąd że nie ma takie pliku :P

Czyli jakiego ?

p.s.

Czy ludzie nie umieją opisywac swych problemow ? O ile byloby łatwiej gdybyś opisał wszystko do poczatku podajac katalog (uklad plikow) i np w obecnym poscie plik wraz ze sciezką jakiej nie moze sie doszukac (adres)?

[edyta]

Wybacz, ze na Ciebie padło... ale czasem wymiekam jak ludzie pisza 'mam błąd - kto wie jaki ?' i tyle na ten temat podaje user.

Odnośnik do komentarza
Udostępnij na innych stronach

oki sorki już sie poprawiam

mam następujący układ katalogów :

www <- w nim krasnal szuka wsyzstkich stronek każda stronka w osobnym podkatalogu

- tha <- mój próbmy katalog do nauki .htaccess i w nim są pliki :

- .htaccess

- .index.php

- nagł.php i stopka.php (kóre chyba nei mają znaczenia dla sprawy bo to początek i kienic stromki)

plik .htaccess ma zawartość :

RewriteEngine On

Options +FollowSymLinks

RewriteRule ^index.html$ index.php [L]

RewriteRule ^index-([0-9]*).html$ index.php?id=$1 [L]

a index.php ma zawartość:

<?php

include_once ('nagl.php');

require_once ('../mysql_con_h.php');

if (!isset ($_GET['id']))

{

$zap = "SELECT * FROM dane";

$wyn = mysql_query ($zap);

echo "<A HREF=\"index.html\">index</a><BR>";

while ($wiersz = mysql_fetch_array ($wyn, MYSQL_NUM))

{

echo $wiersz[0]." ".$wiersz[1]." ".$wiersz[2]."<BR>";

echo "<A HREF=\"index-{$wiersz[0]}.html\">{$wiersz[1]}</a><BR>";

}

}

else

{

$zap1 = "SELECT * FROM dane WHERE id = {$_GET['id']}";

$wyn1 = mysql_query ($zap1);

$wiersz1 = mysql_fetch_array ($wyn1, MYSQL_NUM);

echo "<A HREF=\"index.php\">index</a><BR>";

echo $wiersz1[0]." ".$wiersz1[1]." ".$wiersz1[2]."<BR>";

echo "<A HREF=\"index-{$wiersz1[0]}.html\">{$wiersz1[1]}</a><BR>";

}

include_once ('stopka.php');

?>

proste wypisywanie bazy i jak siękliknie rekord jakiś to jest wynik tylko jeden

bez .htaccess działa.

Jak wprowadzałem ścieżki co mi podpowiedizałeś w poprzednim poście to jak klikałem na link gdiz emiała się załadować strona index-1.html to pisało że ni ma takiej.

Mam nadzieje że teraz wyjasniłem jaśniej.Spoko rozumiem akurat na mnie padło no cóż tez mój błąd mogłem jaśniej pisać. Ale i tak dzięki za podjętąpóbe pomocy :P

Odnośnik do komentarza
Udostępnij na innych stronach

www <- w nim krasnal szuka wsyzstkich stronek każda stronka w osobnym podkatalogu

  - tha <- mój próbmy katalog do nauki .htaccess i w nim są pliki :

Chyba literowka... mało wazne w tym momencie :P

oki sorki już sie poprawiam...

...jak klikałem na link gdiz emiała się załadować strona index-1.html to pisało że ni  ma takiej.

No chyba nie bardzo sie poprawiłeś. :P chciałem wiedzieć jakiego pliku nie moze sie doszukać (przepisz komunikat tak jak to zrobiles poprzednim razem):
Bad Request

Your browser sent a request that this server could not understand.

Invalid URI in request GET /~hta/index-2.html HTTP/1.1

Z tego poprzedniego wlasnie komunikatu nalezaloby wnioskowac ze powinno byc tak:

RewriteRule ^index.html$ /hta/index.php [L]

RewriteRule ^index-([0-9]*).html$ /hta/index.php?id=$1 [L]

lub (niewiedziec czemu) tak:

RewriteRule ^index.html$ /~hta/index.php [L]

RewriteRule ^index-([0-9]*).html$ /~hta/index.php?id=$1 [L]

sprawdz tez tak...

RewriteRule ^index.html$ hta/index.php [L]

RewriteRule ^index-([0-9]*).html$ hta/index.php?id=$1 [L]

Ja na apache mam wersje pierwszą i działa bez problemów

Co do skryptu PHP to jest raczej poprawny - problem lezy w samym .htaccess

Pozdrawiam

Odnośnik do komentarza
Udostępnij na innych stronach

oki wielkie dzieki działa :)

brakowało ~ w ścieżce :) no teraz jak już zadziałało to zobaczyłęm ze faktycznie jest w adresie wiec i tu powinna być :blush:

Dzięki :P:P:)

a mam jeszcze jedno pytanko jeśli można te RewriteBase to jest ustawianie ścieżki na gdzie ma operować htaccess ?? bo nie bardzo jeszcze to czaje:(

Odnośnik do komentarza
Udostępnij na innych stronach

a mam jeszcze jedno pytanko jeśli można te RewriteBase to jest ustawianie ścieżki na gdzie ma operować htaccess ?? bo nie bardzo jeszcze to czaje:(

Nie wiem... wydaje mnie sie ze RewritBase /~hta a .htacces zawsze w katalogu ktorego ma sie tyczyć zamiana.

RewriteBase moze nie dzialac... jesli jest OK to zostaw tak jak jest.

Odnośnik do komentarza
Udostępnij na innych stronach

tak jest oki jeszcze raz dzięki

tylko mam jedno ale  :P  mianowicie jak klikam link :

echo "<A HREF=\"index.html\">index</A>

to przy tym .htaccess niestety nie podmiena mi adresu na index.html a w przeglądarce wyświetla index.php

w pozostałych przypadkach działa świetnie

97904[/snapback]

Działa. Gdyby nie działalo to bys nie wszedł na adres index.html

Problem z wyswietlaniem adresu w przegladarce moze wynikach z lokalnego cache. Oproznij cache www twej przegladarki... powinno byc lepiej.

[edyta]

Spiesze jeszcze z jednym wyjasnieniem... nie linkuj do index (niezaleznie czy to .html czy .php) Linkowac powinienes do WWW (bez index) czyli

<a href="/~hta">index</a>

Chcialem to ustawic na RewritBase ale nie bardzo wychodzi, pozostaje wiec to co podalem powyzej.

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności