php - 如何只接受 HTTPS 请求而拒绝 HTTP?
问题描述
您好,我的网站托管在 Hostinger 上,并且我启用了它以强制使用 HTTPS,因此当人们编写http://example.com时,它会转到https://example.com。我有一个 API 可以处理来自我的程序的 POST。我已经有我的 api 处理请求,但我不知道如何“过滤”HTTPS。现在我的 API 接受任何请求(http 或 https),但我希望它忽略或阻止 HTTP 请求,并且只回答 HTTPS。
@edit:在评论中使用了建议并附带以下内容:RewriteEngine on RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://% {HTTP_HOST}%{REQUEST_URI} [L,R=301]
当我执行 HTTPS 请求时它可以工作,但是当我执行 HTTP 请求时,它会发出请求,但是当我回显在正文上发送的变量时,它们是空的。
解决方案
请在下面设置重写规则.htaccess
。
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
它为我工作
推荐阅读
- wiremock - WireMock:临时禁用存根响应
- javascript - 我想使用 jquery 在语言部分之后附加当前路径
- javascript - 为服务编写单元测试:AngularJS
- php - 分页器未传递 CakePHP 自定义字段
- javascript - jquery.min.js:2 Uncaught TypeError: event.preventDefault 不是函数
- kubernetes - Kubernetes Google Cloud 中的 VolumeClaim
- java - Hibernate Envers L2 缓存
- c - 从C程序中,如何知道进程是在前台还是后台运行?
- xml - 在 Spring Boot 中记录 xml 数据的最佳方法是什么?
- java - JavaFX - LineChart 水平标记问题