我需要一些帮助来清理我的.htaccess文件,以便从过期页面重定向

时间:2018-01-30 22:00:29

标签: .htaccess redirect

我继承了一个旧网站,该网站通过了几个不同的域名和文件类型。它曾经有.aspx页面。然后它切换到.php(它仍然是今天)。我的.htaccess文件有点混乱。我可以使用一些帮助清理它来完成以下任务:

这是历史:

旧域名:stuff.olddomain.info

新域名:www.newdomain.com

扭曲:www.newdomain.com曾经有.aspx页面,仍然被谷歌索引

  1. 将所有旧域流量重定向到新域
  2. 将所有流量重定向到www
  3. 将所有.aspx流量重定向到主页 - > www.newdomain.com
  4. .aspx的重定向最后也有一些变量(www.newdomain.com/index.aspx?thing=123)。我需要删除所有额外的东西,然后重定向到www.newdomain.com
  5. 隐藏.php来自所有网址(www.newdomain.com/page.php显示为www.newdomain.com/page)
  6. 除了.aspx重定向外,我的一切都正常工作。我错过了什么?

    RewriteEngine On
    RewriteBase /
    
    # REDIRECT ASPX PAGES FROM PREVIOUS DOMAIN
    RewriteCond %{REQUEST_FILENAME}\.aspx$ -f
    RewriteRule www.newdomain.com [R=301,L]
    
    ### REDIRECT TO WWW FIRST
    RewriteCond %{HTTP_HOST} ^[^.]+\.[^.]+$
    RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [L,R=301]
    
    #RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
    #RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
    
    # browser requests PHP
    RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^\ ]+)\.php
    RewriteRule ^/?(.*)\.php$ /$1 [L,R=301]
    
    # check to see if the request is for a PHP file:
    RewriteCond %{REQUEST_FILENAME}\.php -f
    RewriteRule ^/?(.*)$ /$1.php [L]
    
    # Cache Control - 52 Weeks
    <FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|js|css|swf)$">
    Header set Cache-Control "max-age=3153600, public"
    </FilesMatch>
    

    我知道这可能是一团糟,所以任何帮助都会受到赞赏。

0 个答案:

没有答案