通常画面は表示されるのにセットアップ、メンテナンス画面が表示されない(Ver. 2.11.x 以下)
セットアップ、メンテナンス画面の時だけioncube loaderが動いていない可能性があります。ドキュメントルートにphp.iniを置くようなレンタルサーバーに多いです。この場合、php.iniをsetupディレクトリにコピーしてお試しください。
セットアップ、メンテナンス画面の時だけioncube loaderが動いていない可能性があります。ドキュメントルートにphp.iniを置くようなレンタルサーバーに多いです。この場合、php.iniをsetupディレクトリにコピーしてお試しください。
ioncube loaderがうまく動いていない可能性があります。PHPのバージョンにあったioncube loaderをご利用ください。また、ioncube loader自体のバージョンが古い可能性もあります。動作条件にあったバージョンをご利用ください。それでも改善しない場合は、license.phpが古い可能性もあります。マイページより再ダウンロード(再生成されます)してお試しください。
PHPのバージョンがあっていない可能性があります。対応バージョンページを確認して、CMSのバージョンにあった、PHPバージョンを選択ください。
現在表示しているURLとconfig.server.phpに記述されているドメインが一致しているかご確認ください。
ブラウザのCookieをブラウザの開発ツールなどから削除してください。削除しても改善されない場合は、http:// 表示時とhttps://表示時で、それぞれCookieを削除してください。
このメッセージが出る場合は、セッションが維持できていない可能性があります。リバースプロキシなどのインフラが関係している可能性があるので、インフラ担当者にセッションが維持できるようになっているか、ご確認ください。
archives, arcihves_dir, media ディレクトリ(内部ディレクトリ含め)のパーミッションをWebサーバが書き込めるようにご確認ください。それでもダメな場合は、画像エンジンを切り替えてみます。画像エンジンは GD と ImageMagick があり、ImageMagick が使える場合は、デフォルトでImageMagickになります。以下のコードを private/config.system.yaml に追記することにより、GDを使うようになります。
image_magick : off
config.server.php の DEBUG_MODE が ON(1)になっている可能性があります。OFF(0)に設定してお試しください。
セキュリティ対策で、アップロードできるファイルを制限しています。アップロードしたいファイルの拡張子を追加するには、管理ページ > コンフィグ > 編集設定 の アップロード許可ファイル拡張子 に追加ください。
サーバーの設定で制限されている可能性があります。以下の項目をチェックしてみてください。また現在の設定は、管理ページ > チェックリスト でも確認することができます。
項目 | 説明 | デフォルト | アクセスレベル |
---|---|---|---|
upload_max_filesize | 最大アップロードファイルサイズ | 2M | PHP_INI_PERDIR |
post_max_size | 最大POSTサイズ | 8M | PHP_INI_PERDIR |
memory_limit | 最大利用メモリーサイズ | 128M | PHP_INI_ALL |
max_file_uploads | アップロード出来るファイル数 | 20 | PHP_INI_SYSTEM |
max_input_vars | input要素の最大数 | 1000 | PHP_INI_PERDIR |
アクセスレベル | 意味 |
---|---|
PHP_INI_USER | ユーザースクリプト(ini_setなど)で設定可能なエントリ。.user.ini でも設定可能 |
PHP_INI_PERDIR | php.ini, .htaccess, httpd.conf あるいは、 user.ini で設定可能なエントリ |
PHP_INI_SYSTEM | php.ini, または httpd.confで設定可能なエントリ |
PHP_INI_ALL | どこでも設定可能なエントリ |
ファイル | 記述例 |
---|---|
php.ini, .user.ini | memory_limit = 256M |
.htaccess | php_value memory_limit 256M |
phpファイル | ini_set('memory_limit', '256M'); |
他の制限で引っかかっている場合もありますので、詳しくは http://php.net/manual/ja/ini.core.php をご覧ください。
Google Map APIのAPI Keyを設定する必要があります。未設定の場合は、地図(Google Map)ユニットのページを確認し対応を行ってください。 複数のAPIを有効にする必要があります、設定忘れがないか再度確認をしてください。
Google検索APIなど他のサービスを同時に利用している場合が考えられます。編集時はGoogle検索APIが動かないようにしたり、次のようにACMS.Readyで囲み、実行のタイミングをずらしてください。
<script> ACMS.Ready(function(){ var cx = 'ここにコードが入ります'; var gcse = document.createElement('script'); gcse.type = 'text/javascript'; gcse.async = true; gcse.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') + '//www.google.com/cse/cse.js?cx=' + cx; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(gcse, s); }); </script>
なんらかの原因で、form要素の閉じタグが消えてしまっている可能性が高いです。 IFブロックやタッチブロック、HTMLタグの閉じ忘れなどをご確認ください。
画像エンジンのImagickがうまく動作していない可能性があります。GDに変更してお試しください。
private/config.system.yaml に追加
image_magick : off
Ver. 2.11.0 から 校正オプションの仕様が変わり、校正オプションが指定されている場合も自動でサニタイズ(エスケープ)処理がされるようになりました。 これにより、意図していないHTMLがタグのまま表示されてしまう可能性がございます。
詳細・対応方法は以下をご覧ください。
お問い合わせフォームで、確認画面に進もうとしてもエラーもでず、進めない状況になった場合、何かしらバリデーションで引っ掛かっている可能性があります。
バリデーションを設定する方法は2つあります。1つは、テンプレートで設定する方法と、管理画面で設定する方法です。 テンプレートでバリデーションをかけている場合は、エラーメッセージも同時に記入すると思うので、今回のトラブルの場合は意図していないバリデーションを管理画面に設定している可能性があります。
管理画面 > フォーム > 該当フォームの変更 の「入力チェック・変換」項目に意図しないバリデーションがないかチェックください。
接続元IPアドレスのグローバル変数が正しく取得できなかったり、ログの接続元IPアドレスやログイン制限が正しく動作しない場合がございます。
これはリバースプロキシやCDN、ロードバランサーなどが入っている場合に、正しい接続元IPアドレスが取得できないためになります。
リバースプロキシなどが入っている環境でも正しく接続元IPアドレスを取得するには「config.server.php」の「TRUSTED_PROXY_LIST」に信頼できるプロキシのIPアドレスを設定ください。
複数ある場合はカンマで区切って指定します。
define('TRUSTED_PROXY_LIST', 'xxx.xxx.xxx.xxx,yyy.yyy.yyy.yyy');
これは「X-Forwarded-For」HTTPヘッダーから接続元IPアドレスを取得するときに、偽装された接続元IPアドレスを取得しないようにするための対策となっております。 (「X-Forwarded-For」は簡単に偽装できるため)
ログアウト時に組み込みJSが動作しない場合は、組み込みJS自体が読み込まれていない可能性があります。
「developerテーマ」は標準で、投稿者以上でログインしている時のみ組み込みJSを読み込むようになっているので、「developerテーマ」ベースで開発を行うとこのようなことになります。
「developerテーマ」が組み込みJSを読み込まないようになっているのは、パフォーマンスを考えたためになります。 組み込みJSはさまざまなJSが含まれていて使わない機能も多いので、ログアウト時は組み込みJSを読み込まないようになっております。
特にJS読み込み周りをカスタマイズしていない場合、以下対応をすることで、ログアウト時にも組み込みJSを読み込むことができます。
修正ファイル: themes/ご利用テーマ/include/head/js.html
<!-- 投稿者以上以上の場合だけ組み込みJSを読み込むようにする -->
<!-- BEGIN_MODULE Touch_SessionWithContribution -->
<script src="%{JS_LIB_JQUERY_DIR}jquery-%{JS_LIB_JQUERY_DIR_VERSION}.min.js" charset="UTF-8"></script><!-- BEGIN_MODULE Js -->
<script src="/acms.js{arguments}" charset="UTF-8" id="acms-js"></script><!-- END_MODULE Js -->
<!-- END_MODULE Touch_SessionWithContribution -->
<script src="%{JS_LIB_JQUERY_DIR}jquery-%{JS_LIB_JQUERY_DIR_VERSION}.min.js" charset="UTF-8"></script><!-- BEGIN_MODULE Js -->
<script src="/acms.js{arguments}" charset="UTF-8" id="acms-js"></script><!-- END_MODULE Js -->
アップデートしたら管理画面にスタイルが当たらなくなってしまった場合、以下の原因が考えられます。
詳しく説明していきます。
a-blog cms の管理画面のCSSは、/themes/system/css/ディレクトリに設置されています。
以下のCSSがなかった場合、正常にページが表示されない可能性があります。
アップデート時にうまくアップロードされていなかった場合、再度アップロードし直すことで解決できます。
CSSがうまくアップロードできていなかった場合は、以下のような特徴があります。
古いテンプレートを使用している場合に、正しくスタイルが適用されない可能性があります。
よくあるパターンとしましては、/admin/blog/edit.htmlなどの一部分のファイルを使用しているテーマに設置しており、一部分だけスタイルが適用されていないケースです。
Ver.1系から使用されているサイトでとくにみられるケースです。たとえばブログ管理のページで、Ver.1系の/admin/blog/edit.htmlを適用していると以下の図のような状態になります。
Ver.1系の/admin/blog/edit.htmlを適用している場合は、以下のような特徴があります。
この場合の解決策としては、原因となっているテンプレートをリネームまたは削除することで解決できます。
もし何らかの理由でアップロードしている場合は、/themes/system/から新しいテンプレートを複製し、カスタマイズし直してください。
特定ページ(パスワード変更画面など)や特定の操作(エントリー保存など)で、 403エラー が出て、保存や表示ができない場合、 WAF(Web Application Firewall) が反応している可能性があります。
この場合、一度サーバーのコントロールパネルなどから、WAFを無効にして問題を切り分けてから、WAFの設定を調整していただくか、サーバー管理者にお問合せください。
WAFとはセキュリティ対策の一種で、Web Application Firewall(ウェブ・アプリケーション・ファイアウォール)の略です。 サイトなどのWebアプリケーションの保護に対応します。
メディア機能などで、PNGやJPEGはアップロードできるが、GIF画像がアップロードできない現象が起こる場合があります。
これは、画像エンジンに GD を使用していて、WebP画像 をサポートしている場合に、サーバー環境によって、GIF画像からWebP画像が生成できずにエラーが出てしまうためとなります。
対策の1つとして、画像エンジンを GD ではなく、ImageMagick に変更する方法があります。(デフォルトは ImageMagick) private/config.system.yaml に以下記述をすることで、画像エンジンを GDからImageMagickに変更できます。
image_magick : on
注意点として、サーバー環境によっては、ImageMagickを利用できない環境もあります。利用できない環境では、上記設定をしても画像エンジンは GD のままとなります。
もう一つの対策は、WebP画像サポートをやめることです。 private/config.system.yaml に以下記述をすることで、WebP画像の生成を止めることができます。
webp_support: off