我的 htaccess 并没有按照我想要的方式工作。我在这里看到了一些类似的线程,但它们并不是我所需要的,而且我对 htaccess 的了解还不够,无法修改代码以满足我的需要。
这就是我到目前为止所做的工作:我已经将所有非 www URL 重定向到 www URL,并且我正在对服务器上相应 PHP 文件的所有 URL 进行内部重写。在文件中,我有干净的相对链接,没有任何文件扩展名。
这就是我需要做的:我网站上的所有页面仍然可以通过带有 .php 的 URL 访问。出于 SEO 的原因,我希望带有 .php 的 URL 都执行外部 301 重定向到没有扩展名的干净 URL。
这是我在服务器根文件夹中的 htaccess 文件中的内容。
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
RewriteBase /
RewriteCond %{HTTP_HOST} ^domain.com [NC]
RewriteRule ^(.*)$ http://www.domain.com/$1 [L,R=301]
我会很感激任何帮助。提前致谢!