如何使用.htaccess从URL中删除文件扩展名(.php和.html)

根据SEO专家的说法,如果你的网站URL中包含有.php、.htm或.html扩展名,则对SEO没有影响。那么为什么我们需要从URL中删除这些扩展。正如专家所说,我认为在URL中没有文件扩展名有很多优点。

后端技术对最终用户是隐藏的。但对于SEO来说,确定这项技术并不难。最好的优点是我们可以轻松地更改后端技术,而不影响页面的SEO。

首先在应用程序文档根目录中创建一个.htaccess文件,并根据需要在文件中添加以下值以删除文件扩展名。

从URL中删除.php扩展名

例如,需要将网址从http://example.com/demo.php更改为http://example.com/demo。可以编辑.htaccess文件并添加以下设置。

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^.]+)$ $1.php [NC,L]

现在,如果用户在浏览器中访问/demo,它将显示/demo.php中的内容。但是,如果任何用户输入的完整URL为http://example.com/demo.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]

从URL中删除.html扩展名

例如,需要将网址从http://example.com/demo.html转换为http://example.com/demo。需要编辑.htaccess文件并添加以下设置。

RewriteEngine On 
RewriteCond%{REQUEST_FILENAME}!-f 
RewriteRule ^([^。] +)$ $ 1.html [NC,L]

现在,如果用户在浏览器中访问/demo,它将显示/demo.html中的内容。现在,可能需要将键入完整URL(http://example.com/demo.html)的用户重定向到新的URL(http://example.com/demo)。

RewriteEngine on
RewriteCond %{THE_REQUEST} /([^.]+)\.html [NC]
RewriteRule ^ /%1 [NC,L,R]

RewriteCond %{REQUEST_FILENAME}.html -f
RewriteRule ^ %{REQUEST_URI}.html [NC,L]

本篇文章到这里就已经全部结束了,更多其他精彩内容可以关注的其他相关栏目教程!!!

以上就是如何使用.htaccess从URL中删除文件扩展名(.php和.html)的详细内容,更多请关注其它相关文章!