Re: サブドメインで作成したサイトをルートドメインで公開したい。

2020年4月27日 at 16:45

モノは試しで
http://concrete5-japan.org/community/forums/usage/post-2602/
の方法を8.5.2 & MAMP5.7環境でテストしてみました。

/hogehoge.com/public_html/.htaccess

DirectoryIndex index.html index.php
RewriteEngine On
RewriteBase /

RewriteRule ^$ index.php [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^hoge/ [NC]
RewriteRule ^(.*)$ /hoge/$1


/hogehoge.com/public_html/hoge/.htaccess
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /hoge/index.php/$1 [L]


/hogehoge.com/public_html/hoge/index.php
<?php

$_SERVER['REDIRECT_URL'] = str_replace('hoge/', '', $_SERVER['REDIRECT_URL']);
$_SERVER['ORIG_PATH_INFO'] = str_replace('hoge/', '', $_SERVER['ORIG_PATH_INFO']);
$_SERVER['PATH_INFO'] = str_replace('hoge/', '', $_SERVER['PATH_INFO']);
$_SERVER['SCRIPT_NAME'] = str_replace('hoge/', '', $_SERVER['SCRIPT_NAME']);

require 'concrete/dispatcher.php';


上記3ファイルを変更して問題なく動作しました。
なお、site.phpの編集は不要でした。
というより、define('DIR_REL',〜の表記がありませんでした。

またindex.phpを編集しない場合、トップページは問題なく表示されますが
2階層目以降でフォルダ名が表示されてしまいます(プリティーURL設定時でも同様)。
 hogehoge.com/index.php/blog → hogehoge.com/hoge/index.php/blog

参考になれば幸いです。

Re: サブドメインで作成したサイトをルートドメインで公開したい。

2020年4月27日 at 18:29
連絡ありがとうございます。
今日の夜にもう一度試してみます。

もしかしたら、.htaccessでsslの転送とプリティURL設定をしているので記載する順番がまずいのかも。
 

Re: サブドメインで作成したサイトをルートドメインで公開したい。

2020年4月28日 at 11:57
試してみました。

.htaccesの内容に追加する方法ではうまくいかず、結局はもともとあった.htaccessの内容はすべて削除、すべて書き換えてうまくいきました。
(https://への転送設定とプリティーURLの設定を削除)

【URLとリダイレクト】では、プリティーURLはOFF、カノニカルURLと代替カノニカルURLはともに削除しました。
これですべて表示するように。

ところが、index.phpを書き換えてフォルダ名を消すという部分はなぜかダメでした。

<?php

$_SERVER['REDIRECT_URL'] = str_replace('hoge/', '', $_SERVER['REDIRECT_URL']);
$_SERVER['ORIG_PATH_INFO'] = str_replace('hoge/', '', $_SERVER['ORIG_PATH_INFO']);
$_SERVER['PATH_INFO'] = str_replace('hoge/', '', $_SERVER['PATH_INFO']);
$_SERVER['SCRIPT_NAME'] = str_replace('hoge/', '', $_SERVER['SCRIPT_NAME']);

require 'concrete/dispatcher.php';

に書き換えるとHOME以外のページはすべてのページで【No input file specified.】表示。

http://concrete5-japan.org/community/forums/5-7-x/post-10739/?
の最後にあるXサーバの設定もやってみたんですがこちらもダメでした。
落ち着いて今日の夜にでも再チャレンジしてみます。

本当にありがとうございました。
 

Re: サブドメインで作成したサイトをルートドメインで公開したい。

2020年4月28日 at 18:58
記載順って大事ですよねぇ。
こちらの環境ではプリティーURL設定を
.htaccessの最後に記述することで無事動作しました。
(カノニカルURLは試していません)

index.phpを書き換えてフォルダ名を消す件ですが、
うちも最初はエラーが出たのですが、con5のキャッシュクリアで
無事ことなきを得ました。

ご参考になれば幸いです。
 

Re: サブドメインで作成したサイトをルートドメインで公開したい。

2020年4月30日 at 7:59
教えていただいた物を実行してばかりではだめですね。
ちゃんと.htaccessの書き方も勉強すればいいのでしょうが、どうしても後回しになってしまって。
index.phpとプリティーURLの件は今のところうまくいっていませんが、時間がとれたら再度試してみます。

本当にありがとうございました。

ちなみにアドセンスの審査は落ちました・・・。
転送以前の問題ですね、情けない・・・。