# [solved]mod_rewrite nie działa

## pag-r

Nie moge znaleźć przyczyny błedu, dlaczego mod_rewrite nie chce działać. Niby apache skompilowany z obsługa mod_rewrite, httpd.conf ma odhaszowany wpis, ale wciaz nie działa. Jakieś pomysły?

```
apache2 -M | grep rewrite 

Syntax OK

 rewrite_module (shared)

grep -n rewrite httpd.conf 

114:LoadModule rewrite_module modules/mod_rewrite.so

```

```

#.htaccess

Options FollowSymLinks

RewriteEngine On   

RewriteRule ^/receptury/([A-Za-z0-9]+)/([0-9]+)/?$  receptury.php?action=$1&id=$2 [L]

```

Czy musze tworzyc pliki vhost.conf dla kazdej domeny ktora mam na serwerze?

----------

## timor

Dorzuć sobie RewriteLog siakis.log a poznasz dokładny powód.

----------

## pag-r

 *timor wrote:*   

> Dorzuć sobie RewriteLog siakis.log a poznasz dokładny powód.

 

wszystko byloby prostsze, gdyby takowy gdzies byl

----------

## no4b

Dlatego właśnie, że nie ma użyte zostało słowo "dorzuć".

----------

## timor

 *no4b wrote:*   

> Dlatego właśnie, że nie ma użyte zostało słowo "dorzuć".

 Tak... myślę, że właśnie o to mi chodziło  :Smile: 

----------

## pag-r

z rewrite.log nic nie wynika, wszysko wyglada okej, ale nie dziala pozniej dorzuce zawartosc.

//edit

wiem, ze mialem sam analizowac, ale skoro nie widze bledow, moze ktos je znajdzie

rewrite.log

RewriteLogLevel 9

```

127.0.0.1 - - [04/Nov/2009:11:07:42 +0100] [localhost/sid#27ae040][rid#2b19258/initial] (3) [perdir /var/www/localhost/htdocs/test/] strip per-dir prefix: /var/www/localhost/htdocs/test/receptury.php -> receptury.php

127.0.0.1 - - [04/Nov/2009:11:07:42 +0100] [localhost/sid#27ae040][rid#2b19258/initial] (3) [perdir /var/www/localhost/htdocs/test/] applying pattern '^rec/([0-9]+)/?$' to uri 'receptury.php'

127.0.0.1 - - [04/Nov/2009:11:07:42 +0100] [localhost/sid#27ae040][rid#2b19258/initial] (3) [perdir /var/www/localhost/htdocs/test/] strip per-dir prefix: /var/www/localhost/htdocs/test/receptury.php -> receptury.php

127.0.0.1 - - [04/Nov/2009:11:07:42 +0100] [localhost/sid#27ae040][rid#2b19258/initial] (3) [perdir /var/www/localhost/htdocs/test/] applying pattern '^receptury/([A-Za-z0-9]+)/([0-9]+)/?$' to uri 'receptury.php'

127.0.0.1 - - [04/Nov/2009:11:07:42 +0100] [localhost/sid#27ae040][rid#2b19258/initial] (1) [perdir /var/www/localhost/htdocs/test/] pass through /var/www/localhost/htdocs/test/receptury.php

127.0.0.1 - - [04/Nov/2009:11:07:43 +0100] [localhost/sid#27ae040][rid#2a25b58/initial] (3) [perdir /var/www/localhost/htdocs/test/] strip per-dir prefix: /var/www/localhost/htdocs/test/receptury.php -> receptury.php

127.0.0.1 - - [04/Nov/2009:11:07:43 +0100] [localhost/sid#27ae040][rid#2a25b58/initial] (3) [perdir /var/www/localhost/htdocs/test/] applying pattern '^rec/([0-9]+)/?$' to uri 'receptury.php'

127.0.0.1 - - [04/Nov/2009:11:07:43 +0100] [localhost/sid#27ae040][rid#2a25b58/initial] (3) [perdir /var/www/localhost/htdocs/test/] strip per-dir prefix: /var/www/localhost/htdocs/test/receptury.php -> receptury.php

127.0.0.1 - - [04/Nov/2009:11:07:43 +0100] [localhost/sid#27ae040][rid#2a25b58/initial] (3) [perdir /var/www/localhost/htdocs/test/] applying pattern '^receptury/([A-Za-z0-9]+)/([0-9]+)/?$' to uri 'receptury.php'

127.0.0.1 - - [04/Nov/2009:11:07:43 +0100] [localhost/sid#27ae040][rid#2a25b58/initial] (1) [perdir /var/www/localhost/htdocs/test/] pass through /var/www/localhost/htdocs/test/receptury.php

127.0.0.1 - - [04/Nov/2009:11:07:44 +0100] [localhost/sid#27ae040][rid#2b19258/initial] (3) [perdir /var/www/localhost/htdocs/test/] strip per-dir prefix: /var/www/localhost/htdocs/test/receptury.php -> receptury.php

127.0.0.1 - - [04/Nov/2009:11:07:44 +0100] [localhost/sid#27ae040][rid#2b19258/initial] (3) [perdir /var/www/localhost/htdocs/test/] applying pattern '^rec/([0-9]+)/?$' to uri 'receptury.php'

127.0.0.1 - - [04/Nov/2009:11:07:44 +0100] [localhost/sid#27ae040][rid#2b19258/initial] (3) [perdir /var/www/localhost/htdocs/test/] strip per-dir prefix: /var/www/localhost/htdocs/test/receptury.php -> receptury.php

127.0.0.1 - - [04/Nov/2009:11:07:44 +0100] [localhost/sid#27ae040][rid#2b19258/initial] (3) [perdir /var/www/localhost/htdocs/test/] applying pattern '^receptury/([A-Za-z0-9]+)/([0-9]+)/?$' to uri 'receptury.php'

127.0.0.1 - - [04/Nov/2009:11:07:44 +0100] [localhost/sid#27ae040][rid#2b19258/initial] (1) [perdir /var/www/localhost/htdocs/test/] pass through /var/www/localhost/htdocs/test/receptury.php

```

access.log

```

127.0.0.1 - - [04/Nov/2009:11:07:41 +0100] "GET /test/img/topbanner.jpg HTTP/1.1" 304 -

127.0.0.1 - - [04/Nov/2009:11:07:42 +0100] "GET /test/receptury.php?action=show&id=1 HTTP/1.1" 200 1444

127.0.0.1 - - [04/Nov/2009:11:07:43 +0100] "GET /test/receptury.php?action=show&id=3 HTTP/1.1" 200 1444

127.0.0.1 - - [04/Nov/2009:11:07:44 +0100] "GET /test/receptury.php?action=show&id=1 HTTP/1.1" 200 1444

127.0.0.1 - - [04/Nov/2009:11:15:32 +0100] "GET /test/receptury.php?action=show&id=3 HTTP/1.1" 200 1444

127.0.0.1 - - [04/Nov/2009:11:15:32 +0100] "GET /test/receptury.php?action=show&id=1 HTTP/1.1" 200 1444

127.0.0.1 - - [04/Nov/2009:11:15:33 +0100] "GET /test/receptury.php?id=1 HTTP/1.1" 200 1440

127.0.0.1 - - [04/Nov/2009:11:15:34 +0100] "GET /test/receptury.php?id=3 HTTP/1.1" 200 1440

127.0.0.1 - - [04/Nov/2009:11:15:35 +0100] "GET /test/receptury.php?action=show&id=1 HTTP/1.1" 200 1444

127.0.0.1 - - [04/Nov/2009:11:15:35 +0100] "GET /test/receptury.php?action=show&id=3 HTTP/1.1" 200 1444

127.0.0.1 - - [04/Nov/2009:11:15:36 +0100] "GET /test/receptury.php?action=show&id=1 HTTP/1.1" 200 1444

127.0.0.1 - - [04/Nov/2009:11:15:37 +0100] "GET /test/receptury.php?action=show&id=3 HTTP/1.1" 200 1444

127.0.0.1 - - [04/Nov/2009:11:15:37 +0100] "GET /test/receptury.php?action=show&id=1 HTTP/1.1" 200 1444

127.0.0.1 - - [04/Nov/2009:11:15:44 +0100] "GET /test/receptury.php?action=show&id=1 HTTP/1.1" 200 1444

127.0.0.1 - - [04/Nov/2009:11:15:45 +0100] "GET /test/receptury.php?action=show&id=3 HTTP/1.1" 200 1444

```

w error.log brak jakichkolwiek bledow

----------

## Sarenka

Mi tez ten wpis nie działa.. Za to ten poniżej jak najbardziej testy przechodzi  :Smile: 

```
RewriteEngine On

RewriteBase /

RewriteRule ^receptury/([a-z]+)/([0-9]+)$ receptury.php?action=$1&id=$2 [L,NC,NS]
```

----------

## pag-r

```

127.0.0.1 - - [06/Nov/2009:10:40:57 +0100] "GET /test/receptury.php?action=show&id=3 HTTP/1.1" 200 1735

127.0.0.1 - - [06/Nov/2009:10:40:58 +0100] "GET /test/receptury.php?action=show&id=1 HTTP/1.1" 200 1541

```

```

127.0.0.1 - - [06/Nov/2009:10:40:57 +0100] [localhost/sid#16d4040][rid#1d030d8/initial] (3) [perdir /var/www/localhost/htdocs/test/] strip per-dir prefix: /var/www/localhost/htdocs/test/receptury.php -> receptury.php

127.0.0.1 - - [06/Nov/2009:10:40:57 +0100] [localhost/sid#16d4040][rid#1d030d8/initial] (3) [perdir /var/www/localhost/htdocs/test/] applying pattern '^receptury/([a-z]+)/([0-9]+)$' to uri 'receptury.php'

127.0.0.1 - - [06/Nov/2009:10:40:57 +0100] [localhost/sid#16d4040][rid#1d030d8/initial] (1) [perdir /var/www/localhost/htdocs/test/] pass through /var/www/localhost/htdocs/test/receptury.php

127.0.0.1 - - [06/Nov/2009:10:40:58 +0100] [localhost/sid#16d4040][rid#1bba538/initial] (3) [perdir /var/www/localhost/htdocs/test/] strip per-dir prefix: /var/www/localhost/htdocs/test/receptury.php -> receptury.php

127.0.0.1 - - [06/Nov/2009:10:40:58 +0100] [localhost/sid#16d4040][rid#1bba538/initial] (3) [perdir /var/www/localhost/htdocs/test/] applying pattern '^receptury/([a-z]+)/([0-9]+)$' to uri 'receptury.php'

127.0.0.1 - - [06/Nov/2009:10:40:58 +0100] [localhost/sid#16d4040][rid#1bba538/initial] (1) [perdir /var/www/localhost/htdocs/test/] pass through /var/www/localhost/htdocs/test/receptury.php

```

A link wciazc wyglada tak samo: 

```
http://localhost/test/receptury.php?action=show&id=1
```

Moze problem jest z RewriteBase? Probowalem juz /, /test, /test/ i wciaz nic:/

----------

## timor

 *pag-r wrote:*   

> A link wciazc wyglada tak samo: 
> 
> ```
> http://localhost/test/receptury.php?action=show&id=1
> ```
> ...

 

Bo to ty masz zmodyfikować link a apache go "zrewrituje" na postać zapytania z ?-kiem, php i etc...

----------

## pag-r

 *Quote:*   

> Bo to ty masz zmodyfikować link a apache go "zrewrituje" na postać zapytania z ?-kiem, php i etc...

 

Widocznie pytam w złym miejscu, bo z tej odpowiedzi nic nie zrozumiałem. Co mam zmodyfikować? Kod php? Czy RewriteBase? Może rewrite mnie przerasta, bo nie potrafię tego zrobić u siebie tylko na localhoscie bo robiłem już to kilkakrotnie na domena.com/zmodyfikowane-zapytanie-bez-? i wszystko działało

----------

## timor

Ty wykorzystujesz linka http://localhost/test/receptury/show/1 a mod_rewrite przepisuje to na http://localhost/test/receptury.php?action=show&id=1

----------

## pag-r

przyznaję się do głupoty (nabytej), nie wrodzonej  :Neutral: . Nie mam pojęcia jak o czymś takim mogłem zapomnieć :<. Aż  brak mi słów. Teraz pozostał tylko problem, znikającego css'a ale z tym już sobie poradzę. To był chyba najbardziej lamerski post, który w życiu napisałem

mea culpa

I wielkie dzięki za cierpliwość dla takich jak ja noobów. Jeszcze raz dziękuje  :Smile: .

----------

## timor

Ciężko Ci zaprzeczyć - to było dość lamerskie   :Twisted Evil: 

Ale w końcu każdy w swych mrocznych początkach był lamerem...  :Wink: 

----------

