所以,情况如下:
我们正在运行一个由Drupal提供支持的网站。前段时间,决定该网站应作为 SSL 服务。将网站从 http 重定向到 https 的设置是由一个不再和我们在一起的人完成的。
我可以在.htaccess
文件中看到以下几行
#Redirect http to https
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://docs.dev.domain.com/$1 [R,L]
mydomain.com 指向 LAMPP 服务器的根目录,而我的站点位于 webroot (docs.dev.domain.com/mysite) 内的文件夹中。
现在,已决定不需要 SSL,必须将其删除,并且必须通过 http(301 重定向)提供所有页面。
当我在 .htaccess 文件中执行此操作时,当用户使用以下方式访问 https 时,使用RewriteRule
将 URL(例如https://docs.dev.domain.com/mysite/content/book)重定向到 http:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !=/favicon.ico
RewriteRule ^ index.php [L]
#Redirect HTTPS to HTTP
RewriteCond %{SERVER_PORT} ^443$
#RewriteCond %{HTTPS} on
RewriteRule ^(.*)$ http://docs.dev.domain.com/mysite/$1 [R=301,L]
#even tried this - RewriteRule ^(.*)$ http://docs.dev.domain.com/$1 [R=301,L]
但它将 https 上的每个请求重定向到http://mydomain.com/mysite/index.php(甚至像 (https://docs.dev.domain.com/mysite/content/book/1 这样的网址,理想情况下应该是重定向到它的http
对应对象)。
如何删除 https 以便通过纯 http 提供动态 URL?对不起,如果这是一个非常新手的问题。