私が継承したプロジェクトでは、すべてのリンクが「https」としてハードコーディングされていましたが、開発環境で「 https://somesite.internal-domain.com 」が認識されません。これは、いくつかのものが時々壊れていることを意味します。
CakePHPは、SSL証明書が利用可能かどうかを考慮したフォーマットされたリンクを生成する方法を提供していますか?
私が継承したプロジェクトでは、すべてのリンクが「https」としてハードコーディングされていましたが、開発環境で「 https://somesite.internal-domain.com 」が認識されません。これは、いくつかのものが時々壊れていることを意味します。
CakePHPは、SSL証明書が利用可能かどうかを考慮したフォーマットされたリンクを生成する方法を提供していますか?
はい、デフォルトで実行されます。次のような相対リンクまたは配列リンクを使用する場合
$this->Html->link('Some link', array('controller' => 'foo', 'action' => 'bar', ...));
現在使用しているものに応じて、ケーキがhttp/httpsを使用していることがわかります。それが進むべき道です。
一方の方法を防ぎたい場合は、301リダイレクトしてからもう一方の方法にリダイレクトします。したがって、ある時点でhttpsに切り替えたい場合は、httpからhttpにリダイレクトします(同じリンクですが、異なるプロトコルが付加されています)。