.htaccess 将所有www和www重定向到https和子文件夹中的特定文件,但隐藏子文件夹和扩展名,而无需SEO双重内容惩罚

.htaccess 将所有www和www重定向到https和子文件夹中的特定文件,但隐藏子文件夹和扩展名,而无需SEO双重内容惩罚,.htaccess,redirect,mod-rewrite,.htaccess,Redirect,Mod Rewrite,我把头发扯了20个小时都没有成功 假设站点是“example.com”,工作文件位于“example.com/subfolder1/kind thinks.php”中。我一直在尝试提出.htaccess规则来执行以下操作: 如果用户仅在地址栏中键入“example.com/kind thinks”,它将自动选择安全https,并在地址栏中显示“”。也就是说,没有“subfolder1”名称,也没有“php”扩展名 将来,当我有更多内容时,我希望用户能够键入“”,它将转到文件“”。同样,我希望地址

我把头发扯了20个小时都没有成功

假设站点是“example.com”,工作文件位于“example.com/subfolder1/kind thinks.php”中。我一直在尝试提出.htaccess规则来执行以下操作:

  • 如果用户仅在地址栏中键入“example.com/kind thinks”,它将自动选择安全https,并在地址栏中显示“”。也就是说,没有“subfolder1”名称,也没有“php”扩展名

  • 将来,当我有更多内容时,我希望用户能够键入“”,它将转到文件“”。同样,我希望地址栏只显示“”,不显示“subfolder2”和“.php”

  • 我希望这个选项(而不是要求)能够以这种方式翻译所有其他url引用,这样我在内部编码时仍然可以使用“fold/file.php”。但我确实需要某些特定的登录页(如上面提到的那些)具有易于阅读的url,并且不显示它们所在的子文件夹

  • 如果我需要在内部引用的话,像“301重定向”这样的链接应该仍然有效,所以我需要在每种情况下使用“301重定向”,以避免搜索引擎对双重内容的惩罚

  • 作为一个完全的新手,我尝试复制/粘贴了这里找到的各种mod rewrite规则,但没有一个达到上述要求。非常感谢您的建议

  • 试试这个重写规则

    RewriteEngine On
    RewriteRule ^.*kind(.*)$ https://example.com/happy$1 [R,L]
    
    它应该转移

    example.com/kind-thoughts
    

    确保将
    example.com
    更改到您的网站。

    尝试此重写规则

    RewriteEngine On
    RewriteRule ^.*kind(.*)$ https://example.com/happy$1 [R,L]
    
    它应该转移

    example.com/kind-thoughts
    


    确保将
    example.com
    更改到您的网站。

    非常感谢!我愚蠢的问题是,重写是否必须有R=301标志才能避免“双重内容”惩罚,因为同一个文件可以通过“.php”扩展名访问,也可以不通过“.php”扩展名访问。作为一个新手,我没有能力对你的答案投赞成票,但非常感谢@这是我的荣幸。不需要
    R=301标志
    。非常感谢!我愚蠢的问题是,重写是否必须有R=301标志才能避免“双重内容”惩罚,因为同一个文件可以通过“.php”扩展名访问,也可以不通过“.php”扩展名访问。作为一个新手,我没有能力对你的答案投赞成票,但非常感谢@这是我的荣幸。不需要
    R=301标志