2013-11-04 12 views

回答

16

试试这个

Yii::app()->createAbsoluteUrl('site/index', array(), 'https'); 
+2

但我已经在我的网站的75个地方添加了这个..有没有一个单一的镜头来做到这一点? –

4

编辑.htaccess文件在项目文件夹,并添加这些lines.It将重定向所有的HTTP流量为https。

RewriteEngine On 
RewriteCond %{SERVER_PORT} 80 
RewriteRule ^(.*)$ https://mydomainname.com/$1 [R,L] 
+0

这并不回答“我如何使用https创建网址”。这也是特定于Apache的。这不应该是被接受的答案,或者应该重新考虑这个问题。 – ahonnecke

+1

@ahonnecke应用程序不是处理http和https的地方。这显然与网络服务器相关。这也是一个简单的解决方案。 – Harikrishnan

+0

你所说的所有事情都适用于大多数情况。你的回答对于稍后出现的人并没有帮助,他们正在寻找被问到的问题的*真实答案。 – ahonnecke

0

的“单发”的方法是设置https://baseUrl参数从配置:

... 'components' => array( ... 'request' => array( 'baseUrl' => ' https://mydomainname.com/site', ), ... ),

+0

在控制器中创建重定向时,这似乎不起作用。 –

+0

您是否在urlManager组件中配置了绝对规则? –

+0

不,我在http://www.yiiframework.com/doc/api/1.1/CUrlManager或http://www.yiiframework.com/doc/guide/1.1/en/topics上看不到选项。 .url –

3

尝试改变宿主

'分量'=>数组( ... '请求'=>数组( 'Hostinfo中'=> 'https://mydomainname.com', ) ... ) ,

+0

这个效果非常好 – gvanto