Kwiatkowski
Kwiatkowski

Reputation: 569

.htaccess and friendly URl dont work

My url's is:

www.page.com/events
www.page.com/events-item?event=title-event

I would like to url looks like this:

www.page.com/events - this is list of events
www.page.com/events/item/title-event - this is event

My .htacces:

Options +FollowSymLinks
RewriteEngine On

RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f

RewriteRule ^([^\.]+)$ $1.php [NC,L]

RewriteRule ^events/item/(.*)$ /events-item.php?event=$1

Xampp change:

http://www.leonardaustin.com/blog/technical/enable-mod_rewrite-in-xampp/

I do not know why does not work.

Help anyone?

Upvotes: 0

Views: 67

Answers (2)

Drakes
Drakes

Reputation: 23660

Change the order of your rules. Put your catch-all rules at the end, not at the beginning.

RewriteEngine On

// Rewrite this before the catch-all
RewriteRule ^events/item/(.*)$ /events-item.php?event=$1 [L]

// Catch-all rule for non-files, non-directories
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]

Results:

http://www.page.com/jakis-title --> http://www.page.com/jakis-title.php

http://www.page.com/jakis-title.php --> http://www.page.com/jakis-title.php

http://www.page.com/events/item/title-event --> http://www.page.com/events-item.php?event=title-event

Upvotes: 1

Kwiatkowski
Kwiatkowski

Reputation: 569

I corrected

Options +FollowSymLinks
RewriteEngine On

RewriteRule ^([^\.]+)$ $1.php [NC,L]
RewriteRule ^event/item/(.*)$ /events-item.php?event=$1  [L]

RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f

Url work! But...

/event/item/jakis-title

This url work when my $_get['url'] = 'jakis-title.php'

When remove '.php' don't work

I would like to variable has no extension

Upvotes: 0

Related Questions