前提・実現したいこと
PHPであるブログの特定のページを異なるドメインで表示するというシステムを作成しています
そこでその変更先ドメインにアクセスを受けたらhtaccessで404表示ページをindex.phpに変更し、index.php内で元のブログのURLをcurlで取得、表示という方法を取っています
変更先ドメインのページにアクセスされたURLは当然404になるので、200に変更したいのですが…
発生している問題
表示自体は問題なくできました
しかしhttp_response_code(200)を設定してもステータスコードが404からかわりません
グーグルのFech as Googleを使用しても見つかりませんと表示されます
該当のソースコード
PHP
1http_response_code(200);// 2header("HTTP/1.1 200 Ok"); 3$url='元のブログのURL'.$_SERVER['REQUEST_URI']; 4 $conn = curl_init(); // cURLセッションの初期化 5 curl_setopt($conn, CURLOPT_URL, $url); // 取得するURLを指定 6 curl_setopt($conn, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); //ユーザーエージェントを受け渡し 7 curl_setopt($conn, CURLOPT_RETURNTRANSFER, true); // 実行結果を文字列で返す。 8 $res = curl_exec($conn); 9 10 echo $res; 11 curl_close($conn); //セッションの終了 12 13 14htaccessの記述 15DirectoryIndex index.html index.cgi index.php index.shtml 16 17ErrorDocument 404 /index.php 18 19 20
試したこと
http_response_codeの位置を変更したりhtaccessでRewriteしてみたりしましたが結果はかわらず…
(ErrorDocument404のあとを絶対URLにしたら転送されてしまい表示がトップページに)
補足情報
phpはロリポップレンタルサーバーの独自ドメインとSSLを設定したサーバーに置いています
元のブログはwpxのWordpressです
ロリポップでエラーページ変更やhtaccessなどは設定していません
回答1件
あなたの回答
tips
プレビュー