Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> .htaccess - moje pierwsze próby
isia
post 27.09.2006, 10:29:34
Post #1





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 5.05.2003

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


Witam

Poczytałam trochę na temat mod_rewrite i postanowiłam u siebie (mam KRASNALA) uruchomić jakiś pierwszy przykład.

Zatem w pliku .htacces wpisałam:
//////////
RewriteEngine on
RewriteRule ^old.html$ new.html
//////////

U katalogu stworzyłam prosty dokument old.html tam też umieściłam plik .htaccess
i otrzymałam taki komunikat:

--------------------------------------
Bad Request
Your browser sent a request that this server could not understand.
Invalid URI in request GET /~rozne_skrypty/old.html HTTP/1.1
Apache/1.3.31 Server at 127.0.0.1 Port 80
-------------------------------------

proszę o pomoc. Może coś nie tak z moim Apache ?
Chciałabym w przyszłości zastąpić na mojej stronie linki:
http://moja-strona.pl/intro.php?id=3487&op=0102
na
http://moja-strona.pl/intro/3487/0102
Ale na razie prosty przykład nie chce mi zadziałać.

pozdrawiam
isia

Ten post edytował isia 27.09.2006, 10:30:17
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 9)
b0b3k
post 27.09.2006, 11:01:45
Post #2





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 24.08.2006

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


Ten plik powinien się nazywać .htaccess a nie .htacces.

Mój przyjładowy plik, który działa na moim krasnalu :

  1. Options FollowSymLinks
  2. RewriteEngine On
  3. RewriteRule ^strona/([^-]+)$ ./index.php?page=$1 [L]


localhost/strona/1 -> localhost/index.php?page=1
Go to the top of the page
+Quote Post
isia
post 27.09.2006, 22:05:25
Post #3





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 5.05.2003

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


tak rzeczywiście .htaccess
Napisałam wcześniej co innego ale teraz poprawiam bo po próbach mam takie doświadczenia:
Napisałam:

  1. Options FollowSymLinks
  2. RewriteEngine On
  3. RewriteRule ^index/([a-z]+)$ /~test/index/$1/ [R]
  4. RewriteRule ^index/([a-z]+)/$ /index.php?op=$1

gdzie ~test to folder mojej stronki www w KRASNALU bo inaczej wogóle wywala informacje, że nie ma takiej stronki.

i teraz wywołuje link:
  1. index/zgr

pierwotnie było:
  1. index.php?op=zgr

Przekierowanie przenosi mnie na stronę KRASNALA
I co mam zrobić - nic z tego nie rozumiem.
Przeczytałam artykuł i dalej nic z tego nie wiem.

A tak wogóle to mam jeszcze takie linki:
  1. index.php?op=fotogalerie&pop=2006xlbmm1.img4

i zupełnie nie wiem jak sobie z nimi poradzę.

błagam niech mi ktoś pomoże bo już cały dzień nad tym siedzę i nawet nie ruszyłam
isia

dalej - może tak napiszę - to będzie łatwiej pomóc:

mam tak:

index.php
index.php?op=zg
index.php?op=zg&pop=01
index.php?op=tx&pop=s&t=tab#chmiel
index.php?op=tx&pop=sa/01-001 (questionmark.gif? i tu zupełnie nie wiem)
index.php?op=ba&pop=ins&fi=3
index.php?op=do&t=tab1
index.php?op=fotogalerie&pop=2006xlbmm1.img4
index.php?wsk=list&op=info&fi=kz
index.php?wsk=list&op=info&fi=kz&pop=2005

może ktoś coś zaproponuje.
Zmiana filozofii nie wchodzi w grę bo musiałabym całe sterowanie serwisem zmienić.
Może uda się to zdefiniować w .htaccess

isia

Ten post edytował isia 27.09.2006, 21:49:04
Go to the top of the page
+Quote Post
free
post 28.09.2006, 11:11:01
Post #4





Grupa: Zarejestrowani
Postów: 269
Pomógł: 0
Dołączył: 6.02.2006

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


Isia spróbuj tak jak ci przedmówca napisał :
  1. RewriteRule ^strona/([^-]+)$ ./index.php?page=$1 [L]

Czyli zamiast ([a-z]+) ==>> ([^-]+)
Go to the top of the page
+Quote Post
isia
post 28.09.2006, 12:39:30
Post #5





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 5.05.2003

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


Zatem zrobiłam tak:

  1. RewriteRule ^index/([^-]+)$ ./index.php?op=$1 [L]


wynik:
prosty link: index.php?op=zgr
do którego odwołuje się: /index/zgr/
(szkoda, że się nie da: index/zgr)

i ląduję na stronie KRASNALA
http://localhost/index/zgr/
zamiast na stronie
http://localhost/~test/index/zgr/
Już nie wspomnę, że na stronie krasnala nie wyświetlają się gify i jpg.

sad.gif
Go to the top of the page
+Quote Post
free
post 28.09.2006, 17:52:24
Post #6





Grupa: Zarejestrowani
Postów: 269
Pomógł: 0
Dołączył: 6.02.2006

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


Tez korzystam z Krasnala. Z tego co wiem to zawsze musisz po localhosicie dac TYLDĘ / ~ /
czyli 127.0.0.1/~test/index/zgr
Nie mozesz uzyc http://localhost/index/zgr/ muszisz dac ~
Go to the top of the page
+Quote Post
isia
post 29.09.2006, 22:30:22
Post #7





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 5.05.2003

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


Jestem kompletnie załamana.
- daję tyldę i dalej ląduje na stronie krasnala - mimo iż u góry w adresie wyświetla:

  1. http://localhost/~test/index/zgr/


Czy to jest takie trudne czy ja jestem taka głupią.

Nigdzie nie mogę znaleźć jakiegoś sensownego przykładu.
Czy nikt nie może mi napisać na podstawie tych linków, które podałam wyżej jakiegoś przykładu, który by zadziałał.

sadsmiley02.gif sadsmiley02.gif sadsmiley02.gif
Go to the top of the page
+Quote Post
ARJ
post 29.09.2006, 22:32:34
Post #8





Grupa: Zarejestrowani
Postów: 453
Pomógł: 22
Dołączył: 20.09.2004
Skąd: Kraków - NH -

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


a że się tak zapytam: w apachu włączony jest mod_rewrite?


--------------------
Warsztat: Windows 7 Pro 64bit | Apache 2.2 | PHP 5.2 | MySQL 5.0 | PHPmyadmin 2.6.4
Go to the top of the page
+Quote Post
qlash
post 29.09.2006, 22:34:13
Post #9





Grupa: Zarejestrowani
Postów: 73
Pomógł: 0
Dołączył: 29.08.2006

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


Dodaj RewriteBase /~katalog/

np.



  1. RewriteEngine On
  2. RewriteBase /~test/
  3. RewriteRule .......


ew. zmien flage [L] na [R] wtedy w przegladarce pokaze Ci sie link na ktory mod_rewrite Cie przekierowuje, bedziesz widziala czy cos jest zle z linkiem.

Ten post edytował qlash 29.09.2006, 22:35:50
Go to the top of the page
+Quote Post
isia
post 29.09.2006, 23:57:57
Post #10





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 5.05.2003

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


Cytat(ARJ @ 29.09.2006, 23:32:34 ) *
a że się tak zapytam: w apachu włączony jest mod_rewrite?

O kurcze nie sprawdziłam...
...
jest tak:
  1. LoadModule rewrite_module modules/mod_rewrite.so


a wcześniej tak:
  1. #AddModule mod_rewrite.c


to co jest włączony czy nie jest?

mam wersję: Apache/1.3.31 (Win32) i php/5.0.2

No to teraz mam pytanie - co mam zrobić żeby go włączyć. Jak zlikwiduję hash to mi powiedział, że takiego modułu nie posiada.

Znalazłam na forum u Pabla przykład. Pablo napisał, że standardowo mod_rewrite jest włączone.
Przykład Pabla zadziałał.

  1. Options FollowSymLinks
  2. RewriteEngine On
  3. RewriteCond %{REQUEST_URI} \/index.html$
  4. RewriteRule ^(.*) /~test/


ale zastosowany u mnie w konfiguracji:

  1. /~test/zgr/index.html


która powinna wywołać zasoby:

  1. index.php?op=zgr


powoduje, że cały czas ładuje się strona główna.

I dalej drepczę w miejscu.

Ten post edytował isia 29.09.2006, 23:10:28
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: 14.08.2025 - 07:15