【WordPress】管理画面だけHTTPS接続にする方法

システム部の鈴木です。

前回の投稿からかなり間が空いてしまいましたが、その間も色々とWordPressを活用した案件を担当させていただきました。
その中で対応したものの一つになりますが、管理画面だけHTTPS接続にする方法をご紹介したいと思います。

最近、特に昨年辺りからは常時SSL接続がデファクトになるなどと言われていますが
レンタルサーバを使っている場合などは特に、その対応が難しい場合があります。

例えば

  1. 共用のSSLが使えるけどドメインが変わってしまう
  2. HTTP接続とHTTPS接続でweb公開領域(ドキュメントルート)が分かれている

など、管理画面ではSSLを使いたいけど使えないケースがあると思います。

そこで調べたところ、日本語の情報はあまり無かったのですが
やはり海外には同じ問題を抱えている人がいたようでした。

HTTPS Domain Alias

使い方は非常に簡単です。

  1. 他のプラグインと同様にプラグインディレクトリに設置
  2. wp-config.php に以下の2行を追加します

<br />
define(&#8216;FORCE_SSL_ADMIN&#8217;, true);<br />
define(&#8216;HTTPS_DOMAIN_ALIAS&#8217;, &#8216;example.org&#8217;);<br />

2行目のドメイン部分は、SSL接続時のドメインを指定します。
httpのときとドメインが変わってもOKです。

たったこれだけ。非常にシンプルで便利です。
今のところWP 4.4系でのみ試していますがバッチリ機能しています。

 

HTTPS接続だけweb公開領域が別になっていて、管理画面だけHTTPSにしたいという場合は
WordPressのインストールディレクトリのエイリアスかシンボリックリンクでも設定してあげればフロント画面はHTTP接続、管理画面側だけはHTTPS接続にする、といった事も可能です。

 

WebGLの時代が来てる(?)

Flash?まぁ…あいつはいいやつだったよ

よくゲーム系の案件をやらせてもらえることの多い渋谷です。

先日、以前Flashで作成した3Dのすごろく(http://ja-dosanko.jp/agri/sugoroku/index.php)をスマホに対応できませんか?という質問をいただいて、ハタと気づいてみればFlashが完全に死んでしまったのでブラウザで3Dをするなら、もうWebGLでやるしかない時代になっていました。

時代が来たと言っても、IE9が未対応でIE11では動作が重いということもあって、最低でもIE9が退場してくれないと「WebGLおすすめです!」と言い出しにくい状況ではありますが。

Internet Explorer 10まで ×
Internet Explorer 11
Microsoft Edge
Google Chrome
Mozilla Firefox
Safari

WebGLで何ができるのか

OpenGL ES 2.0の機能を使ってブラウザに3DCGを描画することができます。
簡単に言うとスマホ用CGとだいたい同じ程度のものを表示できる感じです。

どうやって表示させる?

直でWebGLを叩いてもいいのですが、面倒なコードを山ほど書かなくてはいけないので、そういった作業を簡略化して簡単に3Dを表示してくれるライブラリを使うのが一般的なようです。
有名どころはthree.jsでしょうか?

ちょっとthree.js触って手持ちのモデルを表示させてみます。

three

……ファイルが読み込めないなどのトラブルが多発して、ようやく表示できたのがこれだよ!
法線のフォーマットがおかしくなっているのか正常にライティングが行われてません!

メジャーなファイルフォーマットだと、逆にソフトごとに方言が発生したり、開発元が毎年フォーマットを改定するという所業のせいで、よほど頻繁に更新されるライブラリでないかぎり避けられない問題だったりします。

サンプルプログラムを書き換えるなり、古いフォーマットで書き出し直したりすればうまくいくのかもしれませんが、プログラマは車輪の再開発が大好きなのでパーサーあたりから作りたくなってしまって危険なので泣く泣く諦めます!くやしい!

別の(もっと簡単そうな)方法

最近はやりのゲームを作るためのソフトのいくつかがWebGLに書き出す機能を持っているのでそれに頼りましょう…

代表的なところではUnityUnrealEngineが挙げられますが、渋谷がUnity派のため、ここではUnityでのWebGL制作事例を取り上げたいと思います。

(次回UnityでWebGL編に続く)