我要将网站从mysite.com移到mysite.com/subdirectory。
在旧位置上,它有一个.htcacces文件(在根目录中),仅做基本工作:
RewriteEngine On
#Force HTTPS
RewriteCond %{HTTPS} !=on
RewriteRule ^/?(.*) https://%{HTTP_HOST}/$1 [R=301,L]
#Remove last / if nothing comes after
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} (.+)/$
RewriteRule ^ %1 [R=301,L]
#example.com/page will display the contents of example.com/page.html
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.html -f
RewriteRule ^(.*)$ $1.html [L,QSA]
#301 from example.com/page.html to example.com/page
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /.*\.html\ HTTP/
RewriteRule ^(.*)\.html$ /$1 [L,R=301]
在新位置上,我将相同的.htaccess文件添加到新目录“ root”(mysite.com/subdirectory)。
移动后,强制HTTPS 功能仍然有效,但其他功能均无效。
如何教导.htaccess文件将相同的规则集应用于子目录?