この記事の所要時間: 656

スマイルサーバーというサーバーでWordPress構築・・・
これ自体もPHPの設定とかいろいろありました。
スマイルサーバ | PHPの利用 Ver3.0用

そして、https化・・・
httpsディレクトリをこの期に及んで発見・・・

えーと、あのその
スマイルサーバというサーバーは http で見せるコンテンツを httpディレクトリに
httpsで見せるコンテンツをhttpsディレクトリに入れないといけないルールがありました。

※SSLの設定は済んでいる及び「独自SSL」というのが前提です。

こういう「http」と「https」のディレクトリが独立して用意されている場合
基本的には両プロトコルで表示されるものを該当ディレクトリにおいておくのですが
ここで問題が・・・「WordPress」を http と https に分けることって不可能です。
そもそも固定ページのURLが実存するファイルではありません。
かといって 両ディレクトリにWordPressを構築するとか・・・管理は?アクセスは?
到底、あり得ないわけで・・・
両方で同じものを見せるために・・・どうすれば・・・

そこで
シンボリックリンクで頑張るというワザを使います。

今回、 symlink.php というファイルを下記のコードを元に作り、httpsに置いて一度アクセスしました。

<?php
system('ln -s /virtual/service/(アカウント)/http/wp-config.php /virtual/service/(アカウント)/https/wp-config.php');
system('ln -s /virtual/service/(アカウント)/http/xmlrpc.php /virtual/service/(アカウント)/https/xmlrpc.php');
system('ln -s /virtual/service/(アカウント)/http/wp-trackback.php /virtual/service/(アカウント)/https/wp-trackback.php');
system('ln -s /virtual/service/(アカウント)/http/wp-signup.php /virtual/service/(アカウント)/https/wp-signup.php');
system('ln -s /virtual/service/(アカウント)/http/wp-settings.php /virtual/service/(アカウント)/https/wp-settings.php');
system('ln -s /virtual/service/(アカウント)/http/wp-mail.php /virtual/service/(アカウント)/https/wp-mail.php');
system('ln -s /virtual/service/(アカウント)/http/wp-login.php /virtual/service/(アカウント)/https/wp-login.php');
system('ln -s /virtual/service/(アカウント)/http/wp-load.php /virtual/service/(アカウント)/https/wp-load.php');
system('ln -s /virtual/service/(アカウント)/http/wp-links-opml.php /virtual/service/(アカウント)/https/wp-links-opml.php');
system('ln -s /virtual/service/(アカウント)/http/wp-cron.php /virtual/service/(アカウント)/https/wp-cron.php');
system('ln -s /virtual/service/(アカウント)/http/wp-config-sample.php /virtual/service/(アカウント)/https/wp-config-sample.php');
system('ln -s /virtual/service/(アカウント)/http/wp-comments-post.php /virtual/service/(アカウント)/https/wp-comments-post.php');
system('ln -s /virtual/service/(アカウント)/http/wp-blog-header.php /virtual/service/(アカウント)/https/wp-blog-header.php');
system('ln -s /virtual/service/(アカウント)/http/wp-activate.php /virtual/service/(アカウント)/https/wp-activate.php');
system('ln -s /virtual/service/(アカウント)/http/index.php /virtual/service/(アカウント)/https/index.php');
system('ln -s /virtual/service/(アカウント)/http/wp-content /virtual/service/(アカウント)/https/wp-content');
system('ln -s /virtual/service/(アカウント)/http/wp-includes /virtual/service/(アカウント)/https/wp-includes');
system('ln -s /virtual/service/(アカウント)/http/wp-admin /virtual/service/(アカウント)/https/wp-admin');
/** 以下、imagesとかcssとか任意のものを記述 */
system('ln -s /virtual/service/(アカウント)/http/images /virtual/service/(アカウント)/https/images');

 ?>

すると、管理パネルからファイルマネージャーで見るとたしかにシンボリックリンクの存在が確認できました。

このあと、WordPressサイトへ https:// でアクセスしてみます。
これで普通にアクセスできればOKです。

この時WordPressプラグインのhttpsにする系はオフにしておいてください。

その後、「WordPress HTTPS」というプラグインを入れてみました。
他のサーバーで実績があったので、その通りに設定し・・・・ 結論から言うとダメでした。

Admin SSL というプラグイン、今回これが機能し助かりました。
WordPress > Admin SSL « WordPress Plugins

このプラグインの使用方法はカンタン

メニューの「プラグイン」をクリックすると
「Admin SSL」がありますのでここをクリック
※設定とかツールとかではなく「プラグイン」にメニューが追加されていますのでご注意ください。
表示された管理画面一番上の「Secure my site with SSL」をチェックをします。
これであとは「Additional URLs」にURLを入れるだけ!!
そして設定保存してください。
ここに入れる値はこんな感じ

https://gti.jp/login を https にしたいなら
「login」と入れます。
https://gti.jp/inquiry を https にしたいなら
「inquiry」といれます。
この場合、下記もSSLとなります。
inquiry/confirm ※例えば確認画面
inquiry/finish ※例えば完了画面

参考まで〜!

この記事が気に入ったら
いいね ! しよう

Twitter で