本家のお世話-#118。(HTTP/2 対応のための HTTPS 化-#2)

 先の記事の続き。私は,サブディレクトリ型の WordPress マルチサイト・ネットワークを使っているので,単体の WordPress の HTTPS への移行とは若干異なっているところがあるかもしれない。
 この機会に,ほかにも若干手直ししたところがある。

 まず,ほかの手直しの部分について書いておく。

  1. サイト内の古い動画を, HTML5 に対応させるためにすべてエンコードしなおした。自鯖用の Flash Player として, flvplayer.swf を利用していたのだが,これをサーバから削除した。また,このためにカスタマイズしていた BPS のRoot htaccess を元に戻した。
     ほとんどのブラウザが HTML5 に対応してきた現在,動画のエンコードが適切であれば, flash player はなくていいのだが,実際のところは,ほとんどのサイトでいまだに flash player を使っている。すでに大量の動画を抱えている場合,これがすべて HTML5 のビデオタグの標準でサポートされているなんてなさそうだから,当然ともいえる事態だ。タグの書き換えだって,大変だ。自動でやるったって,そこここに手作業が入り込んでくるだろうし。
     まっ,わずかな量の再エンコードに,結構時間を取られた私の,グチです(汗)。
  2. 困った IP 等を拒否るのに Apache の conf ファイルを使うということをやっていたのだが, htaccess ファイルを使うことにした。まっ,こっちのほうが,一般的だよね。
    require を htaccess で使うために, AuthConfigAllowOverride に書き加えた。

 さて, WordPress について,書いて行こう。

  1. サイト内のすべての http://o6asan.com// にした。もちろん, / ではなく//o6asan.com/ でもいい。しかし, / にしておけば,のちのち,ドメイン名を変えたくなったときにも再編集しなくていいし(笑)。
    Search Regex が便利だった。ほとんどはこのプラグインが換えてくれたが,残りはチマチマと手作業。
  2. wp-config.php から define(‘FORCE_SSL_ADMIN’, true); を削除した。
  3. 今回は,自前証明書もクライアント認証も使わないので, http-class.php から下記の 2 行を削除した。
    curl_setopt( $handle, CURLOPT_SSLCERT, 'clientcert.pem の絶対パス' );
    curl_setopt( $handle, CURLOPT_SSLKEY, 'clientkey.pem の絶対パス' );
  4. この 4. は WordPress のマルチサイト・ネットワークを使ってて HTTPS 化する場合には,避けて通れない。
    新しい WordPress を HTTPS 上にインストールした場合,親サイトの URL は https://example.com みたいな感じになっているはずだが,私の場合のように HTTP から HTTPS に変更する場合は, Site URLHOME をデータベース上で訂正しなければいけない。当然ながら, SQL サーバにログオンしての話になる。
    Site URLHOME の値は wp-options テーブルにある。それらを http://example.com から https://example.com に書き換える。

    子サイトについては,サイトネットワーク管理者のダッシュボードから変更できる。 Sites ページで Edit をクリックする。 Info ページの Site URLhttps:// を使ったものに書き換える。 Settings ページで, Siteurl, Home および Fileupload Url について同じ操作をする。

    親サイトの Fileupload Url についても書き換えておく。

    子サイトについては,まっさらの WordPress を HTTPS 上に端からインストールした場合でも,上記の作業は必要である。さもないと, WordPress から 404 を受け取る羽目にナリヤス。

  5. Apache を再起動。 WordPress 全体が HTTPS になった。

「本家のお世話-#118。(HTTP/2 対応のための HTTPS 化-#2)」への8件のフィードバック

  1. こんにちは
    いやー、お疲れ様です。
    http/2以外にも色々やっていたんですね。
    そりゃ書くのが大変です。

    それにwordpressのマルチサイトでhttpsとなると
    この記事大分参考になるんじゃないですか?

    1. くりくりさん,こんばんは。

      > http/2以外にも色々やっていたんですね。
      > そりゃ書くのが大変です。
      全くです。
      ところで,ネット上の記事を読んでも, HTTP/2 でのベンチマークの取り方がよくわからないんですが……

      Nginx と H2O とを比べるとか,よく書いてあるんですが,同一のアパッチ上で HTTPS without HTTP/2 と HTTPS with HTTP/2 を比べるとかどうすればいいんですかね。 ab と h2load で比べればいいんですか。これは,テストサーバでやらないとしっかりしたモンが取れないのかな?
      多数枚の image について,ブラウザで外部からアクセスしたんですが,速度的には改善されていない気がします。この辺の話のせいですかね。☞次世代Webカンファレンス「HTTP2」レポート #nextwebconf
      nginx でもチューニングすれば, H2O に負けない速さが出るとかいう話も読んだんですが, Apache + HTTP/2 のチューニングの情報はまだ少ないようで……

      > それにwordpressのマルチサイトでhttpsとなると
      > この記事大分参考になるんじゃないですか?
      かもしんないです。情報が少なくて七転八倒しましたもん。「プラグインを使いなさい」とか「wp-config.php のカスタマイズ」とか書いてるとこが多かったのですが,結局そういうものは,何もいりませんでした。
      WordPress も進化してますから, MU の時代には,そういうことが必要だったのかもしれません。

      鷹君を見ながら,茶の間で,お返事を書いておりまする(爆)。

  2. おはようございます。

    ソフトバンク優勝おめでとうございます。
    しかし、強いですね。
    全体的にセリーグよりパリーグが強いそして、ソフトバンクは頭ひとつ抜き出てる感じです。

    検証するのはここら辺が参考になりませんかね?
    http://blog.matsumoto-r.jp/?p=4079

    自分はspdyで動かしていたし比較するサイトや
    動画があったのて特に検証していません。

    >Nginx と H2O とを比べるとか,よく書いてある
    >Apache + HTTP/2

    h2の前身であるspdyは大部分がnginxでうごいてるので情報がすくないのは仕方ないでしょうね。
    apacheはこれからだとおもいます。是非がんばってほしい。それにhttpsにしないと意味ありませんから、
    httpsが普及しないとh2も普及しないわけで広がるにも時間が掛かりそうです。
    CentOS7でapacheがh2対応したららnginxの採用はやめるつもりでいるんですけどね。早く対応してほしいな。
    それとmariadb10.1にバージョンアップしました。

    1. くりくりさん,こんにちは。

      ありがとうございます~。
      これで,夜,野球を見なくて済む。ナンチャッテ。 ヤフオクまで,帰ってきてほしかった気も,すこーしあったんですがね。まあ,ホッとしてます。よかった,よかった。

      > 検証するのはここら辺が参考になりませんかね?
      リンク先を拝見すると,やはり, ab と h2load で比較すればいいようですが, h2load のバイナリがどこで手に入るかわかりませんでした。
      ソースコードは, https://github.com/tatsuhiro-t/nghttp2/releases にあるんですが, Windows 系でのビルドのやり方が分からなくて,誰かが作ってくれるまで待とうかなと(滝汗)。

      CF-J10 内にローカル・サーバを建てて,ブラウザから多数枚画像へのアクセスというのはやってみたんですが,結果を見ても,どう違うのかよくわかりませんでした(爆)。

  3. こんにちは
    mariadb10.1は曲者ですね。
    俺の方はエラーもなくうごいています。
    10.0を完全削除してインストールしなおせば
    うごくんじゃないでしょうか?

    >Windows 系でのビルド
    検証したいだけなら、さくらのVPSが2週間無料ですからビルドして検証してもいいんじゃ?
    受信は帯域制限があったが、送信はなかったはずです。

    早めに検証しておかないと次のイベントはphp7です。
    また記事がふえてしまうのではないのでしょうか?w

    1. くりくりさん,こんばんは。

      > 10.0を完全削除してインストールしなおせばうごくんじゃないでしょうか?
      エラーメッセージを見ると,そんな気もします。やってみますかね。

      > さくらのVPSが2週間無料ですからビルドして検証してもいいんじゃ?
      ab と h2load の検証だったら,邪魔が入らない分,ローカルのほうがよくないですか?
      Windows 系のビルドって,ハードル高そう。

      > また記事がふえてしまうのではないのでしょうか?w
      ワハハ。いつまでたっても記事が追い付かないとか。

  4. こんにちは

    色々ありがとうございます。
    まだ不安はありますが、落ち着いています。
    辞めさせる人間にかなりの大金を払う所をみるとやめさせることに相当価値があるということなんでしょうね。それと縁をきるわけですから、いいのかなと思います。
    そして、皮肉な物で隣の部屋で一生懸命wordpressをやっていますが、そのwordpressにログインできないようにするために俺が準備の作業中。なんだかなー。
    このようなことに管理者権限を使うのはどうかと思いますが、会社のwordpressは彼を経由してつくられているのでパスワードなんかばればれなんです。
    資産を守るために仕方ありませんね。

    1. くりくりさん,こんばんは。

      お疲れさまです。

      今朝未明に MariaDB10.1.8 を新規インストールしてリストアしたら,くりくりさんのところと同じく,無エラーで稼働してます。 MySQL もでしたが MariaDB も真ん中レベル以上のバージョン番号が変わったときは,サクッと新規に入れ替えてリストアしたほうが,無難みたいですね。

      ところで,アップグレードの際久しぶりに err ファイルを見たら,バッファープールがどうたらこうたら書いてましたんで,
      innodb_buffer_pool_load_at_startup = ON
      innodb_buffer_pool_dump_at_shutdown = ON
      にしたんですが,このお呪い,うち程度でもおいしいんですかね。
      Dumping and restoring the buffer pool

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください