Joh*_*ord 4 apache .htaccess mod-rewrite
我继承了一个相当可怕的.htaccess文件,它充满了以前的规则.我想要做的是简单地将每个URL小写为SEO原因.目前,Google网站管理员抱怨重复的网页.例如:www.example.com/AbC1.php与www.example.com/abc1.php具有相同的内容.为了解决这个问题,我将以下几行放入我的vhosts.conf中
#Make URL's lower case
RewriteEngine On
RewriteMap lowercase int:tolower
RewriteCond \$1 [A-Z]
RewriteRule ^/(.*)$ /\${lowercase:\$1} [R=301,L]
Run Code Online (Sandbox Code Playgroud)
但由于我的.htaccess文件中的许多规则之一,此规则无法正常工作.我可以添加上述规则并确保它覆盖任何其他规则吗?
您可以将它添加到htaccess文件中的任何其他规则之上,但重写映射定义必须在您的vhost配置中,因此在vhost中:
RewriteEngine On
RewriteMap lowercase int:tolower
Run Code Online (Sandbox Code Playgroud)
在你的htaccess文件的最顶层:
RewriteCond $1 [A-Z]
RewriteRule ^(.*)$ /${lowercase:$1} [R=301,L]
Run Code Online (Sandbox Code Playgroud)
(请注意,您不需要引导斜杠)
归档时间: |
|
查看次数: |
8148 次 |
最近记录: |