我创建运行在HTTPS ..一个网站,但是,当我创建一个使用如何在Yii https上创建绝对网址?
echo Yii::app()->createAbsoluteUrl('site/index');
绝对URL,它总是返回http://mydomainname.com/site/index。
我的预期产出是https://mydomainname.com/site/index。
我如何使用https创建网址?
我创建运行在HTTPS ..一个网站,但是,当我创建一个使用如何在Yii https上创建绝对网址?
echo Yii::app()->createAbsoluteUrl('site/index');
绝对URL,它总是返回http://mydomainname.com/site/index。
我的预期产出是https://mydomainname.com/site/index。
我如何使用https创建网址?
试试这个
Yii::app()->createAbsoluteUrl('site/index', array(), 'https');
编辑.htaccess
文件在项目文件夹,并添加这些lines.It将重定向所有的HTTP流量为https。
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://mydomainname.com/$1 [R,L]
这并不回答“我如何使用https创建网址”。这也是特定于Apache的。这不应该是被接受的答案,或者应该重新考虑这个问题。 – ahonnecke
@ahonnecke应用程序不是处理http和https的地方。这显然与网络服务器相关。这也是一个简单的解决方案。 – Harikrishnan
你所说的所有事情都适用于大多数情况。你的回答对于稍后出现的人并没有帮助,他们正在寻找被问到的问题的*真实答案。 – ahonnecke
的“单发”的方法是设置https://
在baseUrl
参数从配置:
... 'components' => array( ... 'request' => array( 'baseUrl' => ' https://mydomainname.com/site', ), ... ),
在控制器中创建重定向时,这似乎不起作用。 –
您是否在urlManager组件中配置了绝对规则? –
不,我在http://www.yiiframework.com/doc/api/1.1/CUrlManager或http://www.yiiframework.com/doc/guide/1.1/en/topics上看不到选项。 .url –
你最好在此描述创建一个自定义UrlManager实现:
http://www.yiiframework.com/wiki/407/url-management-for-websites-with-secure-and-nonsecure-pages
好处是你的用户不会有每当您拥有真正的重定向时,都会遭受不必要的双重重定向。
尝试改变宿主
'分量'=>数组( ... '请求'=>数组( 'Hostinfo中'=> 'https://mydomainname.com', ) ... ) ,
这个效果非常好 – gvanto
但我已经在我的网站的75个地方添加了这个..有没有一个单一的镜头来做到这一点? –