ok i've got htaccess code work point... i'm stuck.
here original url:
example.com/search/store_info.php?store=113&dentist=dr.%20john%20doe
what i'm trying achieve clean url no dots / periods or spaces (%20) this:
example.com/search/113/dr-john-doe
however, htaccess code i'm using result:
example.com/search/113/dr.
the doctors name pulled database , has dot (.) behind every "dr" process stops in sense. i'm guessing because of dot?
here htaccess code have:
rewriteengine on rewritebase /search/ rewritecond %{the_request} /store_info\.php\?store=([a-z0-9]+)&dentist= ([a-z0-9]+) [nc] rewriterule ^ %1/%2/? [r=301,l] rewriterule ^([a-z0-9]+)/([a-z0-9]+)/?$ store_info.php?store=$1&dentist=$2 [qsa,l,nc]
you can use these rules:
options -multiviews rewriteengine on rewritebase /search/ # redirect internal url pretty url rewritecond %{the_request} /store_info\.php\?store=([a-z0-9]+)&dentist=([^\s&]+) [nc] rewriterule ^ %1/%2/? [l,ne,r=301] # skip files , directories rules below rewritecond %{request_filename} -f [or] rewritecond %{request_filename} -d rewriterule ^ - [l] # recursive rule repeatedly convert dot or space hyphen rewriterule ^([a-z0-9]+)/([^\s.]*)[.\s]+(.*)$ $1/$2-$3 [nc,dpi,e=done:1] # after hyphen conversion done redirect rewritecond %{env:done} =1 rewriterule ^([0-9a-z]+)/([^\s.]+)$ $1/$2 [r=301,ne,l] # internally rewrite pretty url actual 1 rewriterule ^([a-z0-9]+)/([a-z0-9-]+)/?$ store_info.php?store=$1&dentist=$2 [qsa,l,nc]
Comments
Post a Comment