多站点上的drupal force https

时间:2017-06-30 10:10:25

标签: .htaccess https drupal-7

我遇到drupal多站点设置问题。我在同一个drupal安装中有4个网站: www.example.com/fr,www.example.es,www.example.it,www.example.be/fr 我在htaccess文件中应用了公共https重定向规则:

 RewriteEngine on
 RewriteCond %{HTTPS} off
 RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

以“/ fr”结尾的所有域名都很棒。对于其他人,域主页仍然在http,其他网址工作得很好。那是我的问题。 如何使所有域工作(最后有或没有/ fr)。 请帮帮我。

3 个答案:

答案 0 :(得分:0)

尝试添加以下内容 参考:d7 multisite

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !=/favicon.ico
RewriteCond %{REQUEST_URI} ^/site1
RewriteRule ^ site1/index.php [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !=/favicon.ico
RewriteCond %{REQUEST_URI} ^/site2
RewriteRule ^ site2/index.php [L]

另外:

您可以修改文件sites / site.php

中的站点名称

还使用站点的凭据更新settings.php文件。

还需要从主机设置更新网站网址

答案 1 :(得分:0)

我尝试过这个解决方案:

  RewriteBase /
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_URI} !=/favicon.ico
  RewriteCond %{REQUEST_URI} ^/example.it
  RewriteRule ^ example.it/index.php [L]

  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_URI} !=/favicon.ico
  RewriteCond %{REQUEST_URI} ^/example.es
  RewriteRule ^ example.es/index.php [L]

我在htaccess的第一个代码之前添加了这个。什么都没发生。我查看了sites.php文件,所有内容都被注释掉了。我不得不说,我不是第一次建立网站的人。我已经完成了这个项目,旧的开发人员已经不在了。所有的网站都很棒。我只需要向他们添加https,这就是提出问题的地方

答案 2 :(得分:0)

以下解决方案适用于d7多站点

在.htaccess中包括以下几行

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>

引荐-https://forums.cpanel.net/threads/http-to-https-redirects-for-drupal-multisite-setup.606891/