.htaccess - 需要选择性 HTTPS 到 HTTP 重定向 .htaccess 代码

标签 .htaccess http redirect ssl https

好的,我在为 safari 设置 Apple 推送通知时遇到了问题。

在我的服务器上,我有多个子域,其中一个子域也有与之关联的 SSL。

域:

  • thechipkahouse.com(不安全)
  • tchpusher.thechipkahouse.com(安全)
  • azchipka.thechipkahouse.com(不安全)
  • 等等,所有剩余的子域都是 无抵押。

所有域都使用相同的 IP 地址。

目前发生的情况是,由于 Apple 推送通知的工作方式,当有人点击推送通知到达站点时,无论域如何,他们都会通过 https 连接进入。

因此,例如,点击推送通知时,用户应该前往端口 80 上的 thechipkahouse.com,但他们却通过 https 到达端口 443 上的 thechipkahouse.com

由于他们到达的 url 被重定向到 tchpusher.thechipkahouse.com bush 的内容,这是带有 ssl 证书的域

所以我需要做的是将所有传入的 ssl 流量重定向到非 ssl 流量,除非请求的 url 位于 tchpusher.thechipkahouse.com 子域上。尽管保留域名很重要,因为 azchipka.thechipkahouse.com/file 和 thechipkahouse.com/file 是两个不同的位置。

我以为我要找的是这个,但那个也没有。

RewriteEngine on
RewriteCond %{HTTP_HOST} !^tchpush\.
RewriteCond %{SERVER_PORT} 443
RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1 [R,L]

感谢您提供的任何帮助。

最佳答案

你能在 tchpusher.thechipkahouse.com 子域DOCUMENT_ROOT 中试试这个规则吗:

RewriteEngine on

RewriteCond %{HTTP_HOST} !^tchpusher\.thechipkahouse\.com$ [NC]
RewriteCond %{HTTPS} on
RewriteRule ^ http://%{HTTP_HOST}%{REQUEST_URI} [NE,L,R]

关于.htaccess - 需要选择性 HTTPS 到 HTTP 重定向 .htaccess 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20589989/

相关文章:

.net - HTTP 压缩 - 我可以配置客户端来压缩发送到服务器的数据吗?

angular - 如何在 Angular 4 中使用 post 请求 API 发送多个文件

javascript - php 行,每行都有一个我想重定向到外部页面的按钮

.htaccess - 如何使用 htaccess 中的重定向从 URL 中删除 index.php(主页)和 php(其他页面)

php - 漂亮链接中的撇号和冒号

php - 从标题中读取字符串后,字符串为空

php - 启用了 MultiViews 的 Apache Clean-Urls

html - <a href> 将链接附加到当前 url 的末尾

python - 恢复文件的 HTTP 下载和 HTTP 压缩

java - 将本地连接重定向到另一台服务器?