サポート » 使い方全般 » ローカルから本番への移行が何度やってもうまくいきません

  • お世話になります。
    現在macにてMAMPを使いローカル環境でサイト構築をしています。
    サイトが完成したので本番へアップロードしようと思い、下記サイトを参考にしながら調整しているのですが、なかなかうまくいきません。どなたか助けていただけませんでしょうか。

    https://moriawase.net/wordpress-local-honban#MySQL
    このサイトの通りにまず進めてみました。
    私は大塚商会のアルファメールプレミアでサーバー契約しているので、ログインして新たにDBを作成し、phpmyadminからBackWPupでローカル環境のワードプレスよりバックアップ取得したSQLファイルを編集、具体的には上記サイトにもあるように
    “localhost:8888/tennistest”のようなローカルアドレスな部分を全て●●●.com/tennisに変更しました。
    ただし、このとき本番サーバーと同じDB名にする為に検索を掛けましたがDB名とテーブル名が同じ、”tennistest”で始まる文字列だったので、検索しましたが直す箇所が特定できませんでした。
    SQLをインポートしたところ、今度は文字コードでutf8mb4でエラーがでていましたので、
    utf8mb4の所はutf8に、utf8mb4_unicode_ciはutf8_unicode_ciに置き換えたところ、正しくインポートできました。
    続いてwp-config.phpを編集しました。
    ‘DB_NAME’
    ‘DB_USER’
    ‘DB_PASSWORD’
    ‘DB_HOST’
    ‘DB_CHARSET’を本番サーバーのDB情報に合わせ、保存しました。
    .htaccessもサイトの通り編集しました。
    そして本番のディレクトリにあげたところ500エラーや404が出てしまいました。
    エラーログを見て、htaccessのエラーが出ている感じでしたので、
    何回かRewriteBaseとRewriteRuleを書き換えて見直しましたが、404と500エラーに変わるだけでした。
    わかりづらい文面で申し訳ないのですが、どなたかご助言宜しくお願い致します。

9件の返信を表示中 - 1 - 9件目 (全9件中)
  • はじめまして。お試しになっている方法について、検討することはしていません。
    が、もしかしたらお役に立てればと思いまして。
    以前にブログに書いたのですが
    プラグイン「All-in-One WP Migration」がおすすめです。
    http://editorial-inter.net/?p=302

    記事ではローカルへの移行について書いていますが、ローカルから本サーバーへの
    移行も同様です。記事最後に、一度うまくいかなかったことについて書いていますが、
    その後数回、使用して問題なく使えています。

    > エラーログを見て、htaccessのエラーが出ている感じ

    のエラーログを提示できますか。
    これがどのようなエラーなのかが分からないと回答が難しいと思います。

    yfujimoto様、
    提案ありがとうございます。
    早速行ってみましたが、今回テーマでsydneyを使用しているのですが、
    ページビルダーで作成した、固定ページでトップページに指定していたページが本番に復元した際に
    なくなってしまっていました。
    他のページは復元できているのですが。。
    また、画像もリンク等は間違っていないのですが、管理画面のメディアからもサムネイル表示がなく、全てのページで表示がされませんでした。
    1月10日までに本番に完成移動しなくてはいけないので、少し改善に時間がかかりそうなので、また別のアプローチでがんばって復元したいと思います。

    kimipooh様
    お世話になります。
    .htaccessですが、エラーの内容は、(/var/www/html/tenniss/.htaccess: php_value not allowed here)
    他に何かありましたら情報提供しますので、よろしくお願いいたします。

    現状色々試していますがやはりエラーで本番へうまく上げれません。
    SQLファイルや.htaccess等、自分で触った点についてまとめます。
    サイトテーマはSydneyを使用しページビルダーでサイト作成しました。
    バックアップにBackWPupを使用しコンテンツ、SQLファイルなど全て書き出しました。
    会社と自宅でローカル編集するたびに使用し、ローカル環境では双方向移動も問題なく動作していました。
    ●使用バージョンWordPress 4.8.4
    本番に上げるにあたり、編集した点は以下です。
    ●SQLファイル
    http://localhost:8888/wordpress
                   ↓
    https://www.ABCD.co.jp/tennisclub
    ●SQLファイルの文字コード
    utf8mb4
      ↓
    utf8
    utf8mb4_unicode_520_ci

    utf8_general_ci
    ●ローカルDB名:tennis
    ●本番DB名:tennis(SQLソース内に同じ名前が使われている部分があり、置換が難しそうなのででローカルに合わせました)

    ●wp-config.phpローカル環境:コメントアウト部分が文字化けしていました。
    define(‘DB_NAME’, ‘tennis’);
    /** MySQL 繝�繝シ繧ソ繝吶�シ繧ケ縺ョ繝ヲ繝シ繧カ繝シ蜷� */
    define(‘DB_USER’, ‘root’);
    /** MySQL 繝�繝シ繧ソ繝吶�シ繧ケ縺ョ繝代せ繝ッ繝シ繝� */
    define(‘DB_PASSWORD’, ‘root’);
    /** MySQL 縺ョ繝帙せ繝亥錐 */
    define(‘DB_HOST’, ‘localhost’);
    /** 繝�繝シ繧ソ繝吶�シ繧ケ縺ョ繝�繝シ繝悶Ν繧剃ス懈�舌☆繧矩圀縺ョ繝�繝シ繧ソ繝吶�シ繧ケ縺ョ譁�蟄励そ繝�繝� */
    define(‘DB_CHARSET’, ‘utf8mb4’);
    /** 繝�繝シ繧ソ繝吶�シ繧ケ縺ョ辣ァ蜷磯��蠎� (縺サ縺ィ繧薙←縺ョ蝣エ蜷亥、画峩縺吶k蠢�隕√�ッ縺ゅj縺セ縺帙s) */
    define(‘DB_COLLATE’, ”);
    define(‘WP_MEMORY_LIMIT’, ‘500M’);

    ●wp-config.php本番環境:
    define(‘DB_NAME’, ‘tennis’);
    define(‘DB_USER’, ‘tennis2017’);
    define(‘DB_PASSWORD’, ‘tennis2017’);
    define(‘DB_HOST’, ‘localhost’);
    define(‘DB_CHARSET’, ‘utf8_general_ci’);
    define(‘DB_COLLATE’, ”);
    define(‘WP_MEMORY_LIMIT’, ‘500M’);

    ●.htaccess:ローカル環境
    <Files ~ “.(gif|jpe?g|png|ico|js|css|gz)$”>
    Header set Cache-Control “max-age=2592000”
    </Files>
    php_value memory_limit 64M
    php_value post_max_size 40M
    php_value upload_max_filesize 30M
    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /wordpress/
    RewriteRule ^index\.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /wordpress/index.php [L]
    </IfModule>
    # END WordPress

    ●.htaccess:本番環境
    <Files ~ “.(gif|jpe?g|png|ico|js|css|gz)$”>
    Header set Cache-Control “max-age=2592000”
    </Files>
    php_value memory_limit 64M
    php_value post_max_size 40M
    php_value upload_max_filesize 30M
    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress

    以上になります。
    変更したファイルを含めてバックアップをFTPでそのまま該当のディレクトリに上げましたが
    500Internal Server Errorでダメでした。
    サーバーのエラーログには/var/www/html/tennisclub/.htaccess: php_value not allowed here
    と書かれていましたが、改善点が見つかりません。
    ローカルの時点で何かリンク等直しておく点があるのでしょうか?
    本当にわからず迷走しています。どなたかご助言よろしくお願いいたします。

    単純に、本番サーバーで許可されていない記述を
    htaccessに書き込んでしまっているとか、そんな話だったりしませんか?

    こんにちは

    アップロードしている先とブラウザからアクセスしている先が違うということでは・・・

    アップロードした.htaccessにない記述がエラー出力されるということは、そういうことだと思います。

    あ、あとはエラー出力されたのがすごい古いものだったとか。

    ありがとうございます。
    調べてみましたが、現在会社で利用しているサーバが、
    大塚商会アルファメールプレミアで、
    http://www.alpha-mail.jp/faq/web/

    サーバタイプ1の場合
    お客様が作成された.htaccessはご利用いただけません。
    と、ありました。。。

    そのFAQの中に、

    Q WordPressは利用できますか?
    A サーバタイプ3の場合のみ、ご利用できます。

    とありますが、利用されているサーバは「サーバタイプ3」なのですよね。

    サーバタイプ1の場合
    お客様が作成された.htaccessはご利用いただけません。
    と、ありました。。。

    「サーバタイプ1」は Apache ではなく IIS のようなので .htaccess が使えないのは当然だと思います。

    ふと思ったのですが、エラーログにphp_value not allowed here とあるので、.htaccess 内の php_value 3行がエラーになっているのでは。その3行をコメントアウトしたら直ったりしませんか。

9件の返信を表示中 - 1 - 9件目 (全9件中)
  • トピック「ローカルから本番への移行が何度やってもうまくいきません」には新たに返信することはできません。