简体   繁体   English

PHP Apache Mod重写删除.php不起作用

[英]Php apache mod rewrite remove .php not working

I'm trying to remove .php from my url, below is my .htaccess contents 我正在尝试从网址中删除.php,以下是我的.htaccess内容

<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteBase /folder/

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/?$ path.php?username=$1 [L,QSA]

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ $1.php [L]
</IfModule> 

I don't have any idea what's going wrong. 我不知道怎么了。

Try this: 尝试这个:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php

You need an additional rule to redirect .php URL to non-php one. 您需要一条附加规则才能将.php URL重定向到非.php URL Try this code: 试试这个代码:

Options -MultiViews
RewriteEngine On
RewriteBase /folder/

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/?$ path.php?username=$1 [L,QSA]

RewriteCond %{THE_REQUEST} \s/+folder/(.+?)\.php[\s?] [NC]
RewriteRule ^ %1? [R,L,NC]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.+?)/?$ $1.php [L]

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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