简体   繁体   中英

Htaccess rewrite/redirect .php

I tried to look for an answer for my problem, but i'm not secure to have find it.

In my website i actually use this .htaccess to rewrite the url:

Options -MultiViews
RewriteEngine On

#General rewrite condition 
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]

It work correctly, if i write " www.mysite.com/pagename1 "

But, when i make a link from pagename1 to pagename2 (for ex):

<a href="www.mysite.com/pagename2">Link</a>

The browser automatically open to " www.mysite.com/pagename2 .php ", then it add the file extention.

Q1: How is it possible?

Q2: How i prevent this?

Thank you all.

try this :

RewriteEngine On

RewriteCond %{THE_REQUEST} ^\w+\ /(.*)\.php(\?.*)?\ HTTP/
RewriteRule ^ http://%{HTTP_HOST}/%1 [R=301]

RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule .* $0.php

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM