相关疑难解决方法(0)

apache HTTP:.htaccess中的X-Forwarded-Proto导致dev环境中的重定向循环

我不得不更新我的.htaccess:

RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Run Code Online (Sandbox Code Playgroud)

对此:

RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Run Code Online (Sandbox Code Playgroud)

让它在AWS Elasic负载均衡器后面工作.

这一切似乎在AWS上运行良好,但在我的本地环境中,我陷入了重定向循环.

如何让这个设置在两种环境中正常工作?

apache .htaccess mod-rewrite redirect amazon-web-services

46
推荐指数
1
解决办法
4万
查看次数

强制HTTPS用于特定URL

这应该是一个快速...这是我目前的.htaccess文件:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress
Run Code Online (Sandbox Code Playgroud)

我需要做的是确保如果http://www.mydomain.com/cart/达到,它需要强制HTTPS ...... /cart/以及其中的任何内容/cart/

.htaccess ssl https redirect

2
推荐指数
1
解决办法
1万
查看次数

如何使用PHP检测安全连接(https)?

目前我的服务器上已包含SSL.想通过https强制我的用户使用登录页面登录.

<?php

  if (empty($_SERVER['https']) || $_SERVER['https'] != 'on') {
    header('location: https://my_login_page');
    exit();
    }

  # rest of code
  ...
Run Code Online (Sandbox Code Playgroud)

但是当没有SSL时,这是一个问题.

现在我有情况.用户请求关注URL

http://domain.com/login.php
Run Code Online (Sandbox Code Playgroud)

在这里,我无法访问$_SERVER['https']并希望确保可以将用户重定向到

https://domain.com/login.php
Run Code Online (Sandbox Code Playgroud)

例如,SSL证书在一段时间后过期,并希望保持用户使用登录w/out安全连接.

我的目标是这样的例子:

if (ssl_installed() && (empty($_SERVER['https']) || $_SERVER[] != 'on')) {
  header('location: https://domain.com/login.php');
  exit();
  }

# when there's no SSL it continues using HTTP
Run Code Online (Sandbox Code Playgroud)

是的,想写函数(例如ssl_installed():),true当可能使用安全连接时返回,否则false.

我已经尝试过使用get_headers()并意识到它总是会对https://链接返回false .

可能的方法:

我已经有了解决方案.我的数据库中的配置表包含行ssl=1(或0),并且在建立数据库连接后我使用此值来判断是否可以使用SSL,并且上面提到的函数使用此值返回结果.

我的问题是:有更简单的解决方案吗?

要明确:我正在寻找PHP-ONLY SOLUTION(自动检测)!

任何帮助,将不胜感激.

php security ssl https

0
推荐指数
1
解决办法
8397
查看次数