我一直在试图弄清楚如何删除.php扩展名,我到处搜索,似乎大多数代码都不再工作了。下面的代码是我现在用来删除.php扩展名的代码,但它不起作用。
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !- f
RewriteRule ^([^'.]+)$ $1.php [NC]
我在Windows 10上使用XAMPP。我也多次尝试删除.php
扩展名,但结果是一样的。但过了很长时间,我终于明白了我们如何做到这一点。如果您想要相同的结果,只需按照以下步骤操作...
要从 PHP 文件中删除.php
扩展名,例如,如果要将mywebsite.com/about.php
更改为 mywebsite.com/about
,则必须在.htaccess
文件中添加以下代码:
首先,确保您已经创建了一个名为 .htaccess
的新文件,并将其放置在放置index
文件的root-level/root-directory
。现在,使用您选择的任何编辑器打开此 (.htaccess( 文件,复制/粘贴给定的代码并保存它......
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^.]+)$ $1.php [NC,L]
现在,如果您(任何用户(将在浏览器中访问mywebsite.com/about
,则用户将看到mywebsite.com/about.php
页面的内容。
但是,如果您(任何用户(将mywebsite.com/about.php
访问 URL,这不会将用户重定向到此mywebsite.com/about
页面。但会转到这个mywebsite.com/about.php
页面,这意味着用户仍然可以访问mywebsite.com/about.php
页面。别担心。如果您想避免这种情况,只需执行下一步即可。
为了避免上述问题,现在您需要在.htaccess
文件中添加更多规则。为此,您必须将旧代码替换为下面给出的新代码,保存文件并检查出来......
RewriteEngine On
RewriteCond %{THE_REQUEST} /([^.]+)'.php [NC]
RewriteRule ^ /%1 [NC,L,R]
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^ %{REQUEST_URI}.php [NC,L]
仅此而已,一切就绪。我希望这将解决每个人的问题。
祝你有美好的一天:)
从 PHP 文件中删除.php扩展
名例如,yoursite.com/wallpaper.php
要yoursite.com/wallpaper
,您必须在 .htaccess 文件中添加以下代码:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^'.]+)$ $1.php [NC,L]
或
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule !.*'.php$ %{REQUEST_FILENAME}.php [L, QSA]
或
请参阅从 URL 中删除.php扩展名
另外,请确保您已mod_rewrite。
另请参阅如何创建 .htacess 文件
我认为您还需要使用上面的htaccess代码更改内部网站编码,并从Web编码中提到的位置删除文件名URL扩展名。例如:-
https://yoursite.com/page.html
改为
https://yoursite.com/page/
ht访问代码
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}'.html -f
RewriteRule ^(.*)$ $1.html [NC,L]