根据该代码,我继承了一个包含.htaccess文件的网站。 SEO员工说:“存在从http://example.com到https://example.com的临时重定向,您可以将其更改为永久重定向吗?”
问题是我不了解.htaccess重定向得足够好以至于无法诊断。
我可以对.htaccess重定向规则进行解剖入门,因为我对它们的结构一无所知。对我来说看起来很理想(并出现在其他SO答案中)的参考文献http://progtuts.info/198/the-anatomy-of-a-htaccess-file-hints-and-tips/已不存在。
这些是现有的.htaccess条件和规则:
RewriteCond %{HTTP_HOST} ^www\.
RewriteCond %{HTTPS}s ^on(s)|off
RewriteCond http%1://%{HTTP_HOST} ^(https?://)(www\.)?(.+)$
RewriteRule ^ %1%3%{REQUEST_URI} [R=301,L]
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC]
RewriteRule ^ %1 [R=301,L,NC]
RewriteCond %{REQUEST_FILENAME}.php -f [NC]
RewriteRule ^ %{REQUEST_URI}.php [L]
据我了解,[R]
标志如果未指定,则默认为302s,但在本文档中似乎都设置为301s。
有两件事-有人能指出导致SEO公司报告的302重定向的问题是什么吗?
其次,有人知道真正破坏.htaccess重写结构的资源吗?我了解这些标志,并且了解到有些部分是正则表达式,但除此之外,我只有最模糊的想法。看起来%
和^
都有特殊含义,但我不知道该怎么办。...