Php 文件扩展名在相当的URL重写后显示

Php 文件扩展名在相当的URL重写后显示,php,apache,mod-rewrite,apache2,Php,Apache,Mod Rewrite,Apache2,我有这样一个重写规则: RewriteRule ^listings/?(.*)$ listings.php?slug=$1 [L] 我会有类似“site.com/listings/Awesome Place或Thing”的URL。我想slug为这个URL包含“很棒的地方或东西”。根据当前规则,我得到: var_dump($_GET); 'slug' => string '.php/Awesome-Place-Or-Thing' 如何摆脱“.php/”?这是一个混乱的解决方案 Rewr

我有这样一个重写规则:

RewriteRule ^listings/?(.*)$ listings.php?slug=$1 [L]
我会有类似“site.com/listings/Awesome Place或Thing”的URL。我想
slug
为这个URL包含“很棒的地方或东西”。根据当前规则,我得到:

var_dump($_GET);

'slug' => string '.php/Awesome-Place-Or-Thing'

如何摆脱“.php/”?

这是一个混乱的解决方案

RewriteRule ^listings/?\.php/(.*)$ listings.php?slug=$1 [L]

你的子弹放在哪里?删除与htaccess规则无关的内容,必须在PHP中删除它“slug”直接来自$\u GET数组+1,当OP说请求类似于
site.com/listings/Awesome Place或Thing
时,您是如何发现有一个.PHP字符串的,没有扩展名的。由服务器变量转储?无论如何,这是一个很好的推论,但我想OP应该检查请求的来源,以删除任何不需要的字符串。有点不对劲。