web-dev-qa-db-ja.com

サイトのメンテナンスモードを解除するにはどうすればよいですか?

別のサイトを移動したのと同じ方法で、あるサーバーから別のサーバーにサイトを移動しました。ただし、メンテナンスモードが終了することはありません。

PhpMyAdminにアクセスでき、サーバーファイルに簡単にアクセスできます。

私はもう試した /userおよび/q=user

助言がありますか?

5
Gramredhel

試すことができることがいくつかあります。

1。 drushの使用

Webサイトのルートに移動し、このDrushコマンドを1つずつ実行します。

drush vset maintenance_mode 0
drush cc all

2。データベースクエリの使用

Phpmyadminに移動し、このdbステートメントを実行して、変数テーブルの「maintenance_mode」プロパティを「i:0;」に更新します。

UPDATE `variable` SET `value` = 'i:0;' WHERE `name` = 'maintenance_mode';

3。プログラムで管理者としてログインします

index.phpファイルのコピーを作成し、必要なもの(たとえば、maintenance.php)を呼び出し、ファイルの最後に置き換えます

menu_execute_active_handler();

global $user;
$user = user_load(1);
drupal_session_regenerate();
drupal_goto('user');

そのファイル([your_website]/maintenance.phpなど)に移動します。その後、メンテナンスモードを無効にし、終了後にこのファイルを削除することを忘れないでください。

4。 maintenance_modeindex.php変数を手動で設定する

Index.phpファイルを編集して、

variable_set('maintenance_mode', 0);

直前

menu_execute_active_handler();

5。 settings.phpファイルでメンテナンスモードを構成する

settings.phpファイルの最後に

$conf['maintenance_mode'] = 0;
13
mixerowsky

D8でDrushを使用すると、次のことができます。

drush state-set system.maintenance_mode 0

メンテナンスモードをオンに戻すには:

drush state-set system.maintenance_mode 1
2
colan

/ user/loginにアクセスするだけで、メンテナンスモードでも機能し、管理者としてサインインできます。

2
Dmitriy

また、メンテナンスモードはadmin/config/development/maintenanceでも実行できます。タブの下で有効または無効にできます。

1
Vishnu Yadav

Drupal-8-0-0では、#1-5は上記では機能しませんでした。

1-5結果:

1。 drushの使用

  • vset無効なプレースホルダー!default FormattableMarjup.php:240

2。データベースクエリの使用

  • 変数テーブルが見つかりません

3。プログラムで管理者としてログインします

4-**手動でindex.phpにmaintenance_mode変数を設定します

  • variable_set( 'maintenance_mode'、0); //わからない

5-** settings.phpファイルでメンテナンスモードを設定します

  • $ conf ['maintenance_mode'] = 0; // D8では機能しませんでした

解決

  • サイトルートのindex.phpでコードを検索(22行目)

    • $ kernel-> terminate($ request、$ response);
  • このコード行を22行目の上&20行目の下に挿入する

    • \ Drupal :: state()-> set( 'system.maintenance_mode'、FALSE);
  • あなたのサイトのホームページを閲覧する

最終ステップ:index.phpからコード保守コードを削除します:

  • \ Drupal :: state()-> set( 'system.maintenance_mode'、FALSE);
1
armyguyinfl

Drupal 8

Drushにmysqlへのアクセス権はないが、mysqlコンソールへのアクセス権がある場合、これを試すことができます

UPDATE `key_value` SET `value` = 'i:0;' WHERE `name` LIKE '%maintenance_mode%'
1
Alex Kuzava

サイトをあるサーバーから別のサーバーに移動した後、OPの問題が発生しました。データベースが完全にインポートされなかったためです。

新しいサーバーのDBテーブルのリストを古いサーバーのテーブルのリストと比較します。不完全な場合は、PHP MyAdminのような方法でDBをインポートしたが、完全にインポートされなかった可能性があります。

mysql -u username -p dbname < filename.sqlを使用してファイルシステムからインポートするか、 bigdump.php のようなスクリプトを使用してみてください。

インポートしたDBファイルのファイルサイズを小さくしてみることもできます。不要なジャンクデータを一掃するか、DBをそれぞれのテーブルのサブセットを含む複数のファイルにエクスポートします。

0
pants

Drupal 8.1.1の場合、次のDrushコマンドが機能しました。

  • ディレクトリをwebrootに変更します
  • drush sset system.maintenance_mode 0
  • ドラッシュキャッシュ再構築
  • ホームページを更新してログインします。
0
Russellt