■ユーザーズフォーラム リニューアルのお知らせ
新規投稿は新ユーザーズフォーラムにお願いします。
このフォーラムは閲覧専用のアーカイブです。

別サーバへコピー

NewPulsar > 別サーバへコピー @ 2018/3/7 16:58
お世話になります

現在baserCMS4.0.10.1で開発しております。
XAMPPを使い、Apache + MySQL で構成

現在開発したソースを、そのままで別端末へ移行させたく
今の環境と同じように、別端末にもXAMPPでApache + MySQLで
環境を設定しMySQLのデータ構成は、現行のやつよりExport
Importして同様にしております。
Apacheの同じポートが、別で使われていたので別番号で設定。

元端末の構成が c:\xampp\htdocs\basercms\となっており
同様に別端末の c:\xampp\htdocs\ 直下にbasercmsをそのまま
コピーしました。
ポートが違うので、app/Config/database.phpの内容を変更。

起動してみたら、DB接続エラーとなりました。
他に設定を変える必要があるのでしょうか?
そもそも手順が間違ってるかもしれませんが…。

申し訳ありませんが、ご教授お願いします。
seto > Re: 別サーバへコピー @ 2018/3/8 10:26
こんにちは

mysqlのユーザー設定が出来ているかは確認済みでしょうか。
別端末の方で素のbaserをインストールできるか試してみると原因解決の手がかりになります。
NewPulsar > Re: 別サーバへコピー @ 2018/3/8 11:23
seto様

MySQLのユーザ設定はしております。
オリジナルと同じユーザにしてあります。

素のbaserを一度インストールして、設定ファイルの何が違うのか
調べてみようと思います。
後ほど結果を報告させて頂きます。

追記:seto様

接続に成功しました。
素でインストールを試みて、DB設定で失敗して気付きました。
MySQL側のユーザ設定が一部間違えており、接続に失敗していただけでした。
もう一度フォルダ毎コピーして、アクセスしたら動作しました。

一点修正したのですが、app/Config/install.phpのサイトURLを
今回の設定にしないと/admin 時にそのURLに遷移するんですね。

アドバイス有難うございました。
NewPulsar > Re: 別サーバへコピー @ 2018/3/8 17:52
seto様

知っていたら教えてほしいのですが
/adminでログイン画面に遷移するようになったと
思っていたのですが、ログインIDやパスを入力する
画面?が出てきません。
install.php以外にも設定するファイルが存在
するのでしょうか?
seto > Re: 別サーバへコピー @ 2018/3/9 10:22
ログインIDやパスを入力する画面が表示されないというのは、エラーが発生しているということでしょうか。
baserをデバッグモードに変更するとエラーメッセージが表示されるかと思いますので、そちらを教えて頂けますか?

管理画面にログイン出来ない場合は、install.phpに以下のコードを追記していただくとデバッグモードに切り替わります。

Configure::write('debug', 1);


NewPulsar > Re: 別サーバへコピー @ 2018/3/9 11:53
seto様

指示された文を追加しましたが、そのままです。(Apacheは再起動してます)

因みに /admin 入力時に表示される画面を添付します。
何も表示されてない状態です。
Apacheのエラーログも調べましたが、これと言って出力されておりません。


seto > Re: 別サーバへコピー @ 2018/3/9 21:18
見たことがない画面ですね...
思いついたことを書いてみるので、試していただいてもいいでしょうか。

- /admin にアクセスした時に、/admin/users/login に遷移されるかどうか
- ログイン画面以外の、フロントは正常に表示されるかどうか
- app/tmp/logs/error.log や app/tmp/logs/debug.log の中に怪しそうなログがないかどうか
- app/tmp/cache 内のファイルをすべて消すとどうなるか
seto > Re: 別サーバへコピー @ 2018/3/9 21:22
それと、ブラウザのデベロッパーツールにエラーが表示されていないかも確認していただきたいです。

参考
https://qiita.com/takihiyoshi/items/95c9bde8b7b8bda86ce1
NewPulsar > Re: 別サーバへコピー @ 2018/3/12 9:30
seto様

結果を報告します。

- /admin にアクセスした時に、/admin/users/login に遷移されるかどうか

遷移されている。


- ログイン画面以外の、フロントは正常に表示されるかどうか

トップページ及び、メニューから遷移するページ共に表示されている。
但しログアウト状態となっている。
(設定はデバッグモードONとしている)


- app/tmp/logs/error.log や app/tmp/logs/debug.log の中に怪しそうなログがないかどうか

下記のエラー記述がありました。
ただ今回調査では出てないみたいなので、直接関係するログかは不明
Error: [MissingControllerException] Controller class BasercmsController could not be found.
Exception Attributes: array (
'class' => 'BasercmsController',
'plugin' => NULL,
)
Request URL: /basercms/basercms/admin
Stack Trace:
#0 C:\xampp\htdocs\basercms\index.php(159): Dispatcher->dispatch(Object(CakeRequest), Object(CakeResponse))
#1 {main}


- app/tmp/cache 内のファイルをすべて消すとどうなるか

正常にTOP画面は表示されました。
ログイン画面は、変わらず表示されませんでした。


-ブラウザのデベロッパーツールにエラーが表示されていないかも確認

IEしかブラウザを導入出来ない環境なので、IEの開発者ツールで検証した結果
何故か、jQueryが定義されていませんのエラーが・・・
IE11です。

申し訳ありませんが、ご教授お願いします。
jQueryエラーが出てるのが気になります…。
seto > Re: 別サーバへコピー @ 2018/3/12 10:21
lib/baser/webrootが存在しない場合にNewPulsarさんと同じ現象になることを確認しました。

移行元のlib/baser/webrootを移行先のlib/baser/webrootにコピーしてみるとどうでしょう?
NewPulsar > Re: 別サーバへコピー @ 2018/3/12 11:18
seto様

webrootをコピー元よりコピーして、再起動してみましたが
結果ログイン画面が表示されません。
jQueryのエラーも表示されたままです。
ヒントになるか分かりませんが、開発者ツールのエラーを添付します。

NewPulsar > Re: 別サーバへコピー @ 2018/3/12 14:49
seto様

jQueryのエラーですが、元の時に発生していないので
何か設定が不足してるのかなぁと思っております。
jQuery関連で、設定するファイル等は存在するのでしょうか?
seto > Re: 別サーバへコピー @ 2018/3/12 20:15
エラー画面を添付していただいたおかげで原因が分かりました!

IE の互換モードを設定しているとそのようなエラーが発生するようです。

参考記事: https://curecode.jp/tech/ie-bootstraps-javascript-requires-jquery-error/



NewPulsar > Re: 別サーバへコピー @ 2018/3/13 8:25
seto様

仰る通り、互換表示が原因でした。
ただ元では、Edgeモードになっているのに、今回の方は7モードに
なっているのが何故なのか?と疑問です。

同じ端末の同じブラウザで、元と今回を動作させてるのに何故挙動が
違うのか…同じバージョンの同じソースですし。
ログイン画面にMETAタグ埋めて、強制的にEdgeモードで動かそうと
思います。

長々とお付き合い頂き、有難うございました。

追記
METAタグはやめて、Apacheのhttpd.confに下記ソース埋め込みました。
こうやれば、いちいち画面にMETA書かなくても一律で同じモードになるので。
<IfModule headers_module>
Header set X-UA-Compatible "IE=edge"
</IfModule>