Jump to content
php.lv forumi

mod rewrite


Jackal

Recommended Posts

Ir .htaccess fails, kurā ir šādas rindas

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (.*) index.php?$1

 

Problēma tāda, ka, ja pieprasu neeksistējošu failu, piemeram, javascript failu, tad tiek pieprasīts index.php.

Vai var uztaisīt tā, ka, ja pieprasa neeksistejosu failu, tad tiek paradīts "404 not Found"?

Link to comment
Share on other sites

Kāda tad jēga no url rewrite? Jo smukie linki visu laiku pieprasa neeksistējošus failus. Nav vienkāršāk, izņemt, lai nepieprasa js, kas neeksistē?

 

Bet vispār, ja smagi nemaldos, tad tagi !-f nozīmē, ka izpildīt tad, kad fails neeksistē, un !-d, tad kad direktorija neeksistē.

Edited by xPtv45z
Link to comment
Share on other sites

nu un ko tad no šīs rindas var dabūt ārā?

RewriteRule (.*) index.php?$1 pēc tam skanēt GETu, lai pārbaudītu ievadītos get parametrus? nav vienkāršāk kokrētu mainīgo uzlikt?

 

RewriteRule (.*) index.php?url=$1

 

vari vēl pielikt konkrētu tipus, ko tur laid caur to rewrite. piemēram tikai html

 

RewriteCond %{REQUEST_FILENAME} \.html$

 

vēl nenāktu par ļaunu arī get parametrus saglabāt, ja tādi tiek padoti - QSA.

 

kopā tas varētu izskatīties šādi

 

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} \.html$
RewriteRule (.*) index.php?url=$1 [QSA]

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...