在我的Laravel应用中,我有一个POST端点,Arduino在其中发送一些数据。我安装了SSL,然后再次尝试通信,但没有结果(重定向)。我只想从https中排除此特定端点。我尝试了不同的方法和代码,但没有结果。
例如路由端点:/ api / measures
.htaccess文件:
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews -Indexes
</IfModule>
RewriteEngine On
# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} (.+)/$
RewriteRule ^ %1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
最佳答案
值得庆幸的是,我找到了一种不同于更改.htaccess的解决方案。在Laravel的帮助下,我应用了一种中间件,该中间件将所有Web和api请求重定向到安全请求,并排除了从Arduino客户端接收请求的唯一端点(无法处理ssl)。
对我有帮助的答案Laravel 5 - redirect to HTTPS