在codeigniter中将站点url http重定向到https
Posted
技术标签:
【中文标题】在codeigniter中将站点url http重定向到https【英文标题】:Redirect site url http to https in codeigniter 【发布时间】:2016-04-29 20:05:47 【问题描述】:我想将我现有的网站重定向到 HTTPS。当前在浏览器中,如果 URL 以 HTTP 开头,则会显示网关错误,但我想将站点重定向到 HTTPS。
【问题讨论】:
你为$config['base_url'] = 'https://www.example.com/';
做了什么
我把这个 $config['base_url'] = "dev.njoyful.com";
$config['base_url'] = "https://dev.njoyful.com/";
我认为 dev 是子域?
好吧,我把它改成了 $config['base_url'] = "njoyful.com";和 $config['base_url'] = "njoyful.com";但在这两种情况下它仍然无法正常工作......
那么我认为这将是一个 htaccess 问题。
【参考方案1】:
尝试以下代码并将这些行放入项目文件夹根目录的 .htaccess 文件(如果不存在则创建):
RewriteEngine On
RewriteCond %HTTPS !=on
RewriteRule (.*) https://%HTTP_HOST%REQUEST_URI [R,L]
并确保您在 config.php 文件中的 $config['base_url'] 中也使用了 https 协议,例如
$config['base_url'] = 'https://yourproject.local/';
【讨论】:
新建.htaccess
文件并上传。
我如何重定向除 1 个 url 之外的所有 url
@kalpaksavaliya,要排除 uri,请尝试以下操作:RewriteCond %REQUEST_URI !^something/except_url$
这个重定向网址会包括图片和api吗?【参考方案2】:
将此添加到您的.htaccess
RewriteRule ^.*$ https://%HTTP_HOST%REQUEST_URI [L,R=301]
Base_url()
应该是
$config['base_url'] = 'https://www.example.com/';
【讨论】:
我如何重定向除 1 个 url 之外的所有 url以上是关于在codeigniter中将站点url http重定向到https的主要内容,如果未能解决你的问题,请参考以下文章
在 Codeigniter 中将 http 重定向到 https
Codeigniter URL 重定向而不添加 index.php