好的,所以我决定从网址中删除所有.php扩展名,为此,我使用了简单的方法:
Options MultiViews+
但是,我的个人资料页面现在几乎不显示任何内容,因为网址带有黑色背景。如果我输入:
profile.php?username=Joe.Bills
它完全正常,但是,如果我使用:
profile?username=Joe.Bills
它会自动更改网址,并在/
之后添加profile
示例:
profile/?username=Joe.Bills
因此,在“单独的目录”中思考它会导致错误。如何将其从添加额外的/
中删除,以便它不会认为它将转到单独的目录
P.S。我的链接是正确的,目前是这样的:
<a href="profile?username=<?php echo $_SESSION['user_name']; ?>"><span class="bg">Profile</span></a>
再次,正如我所说,如果我把
profile.php?username=Joe.Bills
它完全正常,所以我不明白为什么URL在输入时认为它是一个目录,所以我的问题是:
如何以不同的方式删除.PHP扩展程序以解决此问题,或者我是否可以使用我目前拥有的内容以及如何解决此问题?
答案 0 :(得分:2)
您可以使用以下内容代替选项+多视图:
RewriteEngine on
#remove trailing slashes
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R]
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule !/$ %{REQUEST_URI}.php [NC,L]
这将允许您在最后访问没有扩展名/斜杠的.php文件。