在 Codeigniter 中如何通过 ngrok 执行 POST 请求?
In Codeigniter how to perform POST request through ngrok?
我有一个站点(使用 Codeigniter 3.1.10)在通过本地主机访问时运行良好。我正在尝试通过 ngrok 访问它来测试它,即通过互联网从另一个远程系统访问它。通过 ngrok 我可以访问登录页面:
http://f94181a4.ngrok.io/mysite/logincontroller/login
这将显示登录视图。但是,当我在登录 view/page 中单击提交按钮时,它会从远程系统浏览器发送 POST 请求,如下所示:
http://localhost/mysite/logincontroller/loginaction
因为远程系统在从远程系统浏览器请求时将其请求为 http://localhost, it is not able to connect to my local server. So how will I make it to send the POST request with http://f94181a4.ngrok.io。
http://f94181a4.ngrok.io/mysite/logincontroller/loginaction
您可能忘记设置 "base_url" 配置。
试试改成这样
$protocol = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' || $_SERVER['SERVER_PORT'] == 443) ? "https" : "http";
$config['base_url'] = "$protocol://{$_SERVER['HTTP_HOST']}/mysite/";
我有一个站点(使用 Codeigniter 3.1.10)在通过本地主机访问时运行良好。我正在尝试通过 ngrok 访问它来测试它,即通过互联网从另一个远程系统访问它。通过 ngrok 我可以访问登录页面:
http://f94181a4.ngrok.io/mysite/logincontroller/login
这将显示登录视图。但是,当我在登录 view/page 中单击提交按钮时,它会从远程系统浏览器发送 POST 请求,如下所示:
http://localhost/mysite/logincontroller/loginaction
因为远程系统在从远程系统浏览器请求时将其请求为 http://localhost, it is not able to connect to my local server. So how will I make it to send the POST request with http://f94181a4.ngrok.io。
http://f94181a4.ngrok.io/mysite/logincontroller/loginaction
您可能忘记设置 "base_url" 配置。
试试改成这样
$protocol = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' || $_SERVER['SERVER_PORT'] == 443) ? "https" : "http";
$config['base_url'] = "$protocol://{$_SERVER['HTTP_HOST']}/mysite/";