48308


phpのheader関数でhttpからhttpsに移動させたいです  
submitだとhttpsに移動できます。

`header(location:https://example.com)`だと移動はしますが、  
[http://example.comに移動してしまいます](http://example.com%E3%81%AB%E7%A7%BB%E5%8B%95%E3%81%97%E3%81%A6%E3%81%97%E3%81%BE%E3%81%84%E3%81%BE%E3%81%99)。

headerのlocationの設定の前に何か必要なのでしょうか？  
header('HTTP/1.1 301 Moved Permanently');とか加えてみましたがうまくいかず・・・

後ありえない、[https://example_example.php等ないファイルにアクセスしたら](https://example_example.php%E7%AD%89%E3%81%AA%E3%81%84%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%AB%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%81%97%E3%81%9F%E3%82%89)、httpsでした・・・わかりません。


CC BY-SA 4.0
2018-09-12T06:06:47.293
48307
2018-09-12T11:13:07.287
2018-09-12T11:13:07.287
20350
20350
question
php apache
locationでhttpsに移動させたい


ここに記述されたとおりであるとすれば、

[code]

    header("location :https://example.com");
    
[/code]

は誤りで

[code]

    header("location: https://example.com");
    
[/code]

が正しいですね。  
locationの後のスペースとコロンが逆です。  
前者はMac上のChromeで正しく遷移できませんでした。

一度お試しください。

また、headerのlocationですが、解釈しているのはapacheではなく各ブラウザです。  
ブラウザが受け取ったレスポンス内のヘッダーを解釈して、指定のURLへリダイレクトしてくれているのです。  
なので、本件に関してはapacheの設定は関係ありません。  
詳しくは下記を参照してください。  
<https://developer.mozilla.org/ja/docs/Web/HTTP/Redirections>


CC BY-SA 4.0
2018-09-12T06:42:27.930
48308
2018-09-12T06:42:27.930
17014
48307
answer