.htaccess 将mod_rewrite.php添加到末尾,如何更改为刚好在第一个斜杠之前?

.htaccess 将mod_rewrite.php添加到末尾,如何更改为刚好在第一个斜杠之前?,.htaccess,mod-rewrite,url-rewriting,.htaccess,Mod Rewrite,Url Rewriting,我正在尝试从URL中删除.php,因此我使用以下htaccess代码: RewriteEngine on Options +SymlinksIfOwnerMatch +MultiViews RewriteBase / RewriteRule ^(([^/]+/)*[^.]+)$ /$1.php [L] 这对于像这样的URL很有效mydomain.com/news 但是对于像这样的URL,mydomain.com/news/1/news\u title它被重写为mydomain.com/news

我正在尝试从URL中删除.php,因此我使用以下htaccess代码:

RewriteEngine on
Options +SymlinksIfOwnerMatch +MultiViews
RewriteBase /
RewriteRule ^(([^/]+/)*[^.]+)$ /$1.php [L]
这对于像这样的URL很有效
mydomain.com/news

但是对于像这样的URL,
mydomain.com/news/1/news\u title
它被重写为
mydomain.com/news/1/news\u title.php
,这显然给出了一个404错误。有人能帮我修改一下重写规则,将
.php
添加到第一个正斜杠之后,而不是最后,这样url就会被重写
mydomain.com/news.php/1/news\u title


非常感谢您的帮助和建议

我希望这对您有用:

RewriteEngine on
Options +SymlinksIfOwnerMatch +MultiViews
RewriteBase /
RewriteRule ^([^/]+)(.*) /$1.php$2 [L]

非常感谢您的回复,但是当我尝试访问除主页以外的任何url时,您的编码会导致500个内部服务器错误。@SammyBlackBaron:您能给我一个这样的url示例吗,请?
http://www.mydomain.com/section/2/1/test
-我可以看出,您的重写代码已经完成了我想要的
http://martinmelin.se/rewrite-rule-tester/
显示它现在正按照我的要求被重写——但我不知道为什么现在出现500服务器错误。再次感谢您的帮助。@SammyBlackBaron,您是否使用了一些额外的重写规则?不是在我的htaccess文件中,我没有,但我使用的是一个现成的电子商务软件包,它似乎能够在不使用htaccess(PHP?)的情况下重写URL。如果我转到
http://www.mydomain.com/section.php/2/1/test
在htaccess中没有任何内容的情况下手动加载,页面加载正常。只是我想删除
.php
,所以问题就来了。谢谢