ハナモゲラボ / 試行錯誤の実験人生

日々、PCや各種デバイス、楽器等に翻弄されながら電脳の森をさまよう男の日常と様々な実験をさらりと記しております。

困惑 ― XserverさんとGoogle Apps(現G Suite)さん

February 02 2017

さて、ちゃっかりとこのサイトもしっかりSSL化しておる昨今でございます。
Xserverさん、大変よろしおますね。
で、このドメインでは大層昔からGoogle Appsを使っていたわけなんですがね。

まず、大きな勘違い。
バリュードメインのDNS設定でCoreserverと併用してた関係上、
そこに全部の設定をしてたわけですよね。
で、バリュードメイン側でネームサーバーをXserverに設定して、サーバのIPをXserverに。
・・・・・それで全ては済んだと思てたんです。
サイトは表示されてるから。

しかし、Xserver側にもDNSレコードの設定欄が。
「ああ?サーバなのに?」と思うと、こいつはどっちに設定するのが良いか悩む。

そんなこんなでこのドメインに届くメールが一切届かないし、送っても届かない事態に。
こいつあ困った。

で、とりあえずバリュードメイン側のGoogle Appsの設定を全て削除。
バリュードメイン側にはサーバのドメイン指定だけを残しておいて、
Google Appsの設定はすべてXserver側に設定して様子見。

MXレコードの更新はそれこそ72時間ぐらいかかる場合もあるので、待つしか無いのだが
その間もそわそわしちゃうよね、やっぱね。

で、調べてみるとこのページを発見。

http://whitehatseo.jp/setup-of-googleapps/

ここには

私はXserverのメールボックスを利用していなかったのですが、契約すると設定されているようです。

ホスト名があなたのドメイン名で、種別がMX、優先度が0のDNSレコードがある場合、削除してください。

GoogleサーバーのDNSレコードの優先度は1なので、優先度0の初期設定のホストが優先されてしまい、GoogleAppsの設定が上手く行きません。

あ、確かに優先度ゼロのMXレコードがあるわ・・・・・・・削除。

さて、これで果たしてきっちりとメールが動く様になるのか?
明後日までドキドキしながら待つ事にしますね・・・・

WordPressをSSL化 ― Search Regexに潜む罠とは

February 01 2017

最近、借りてるサーバをXserverにしたのをきっかけにまずはバンドのサイトをSSL化しました。
https://fauntime.com
暗号化がどーたらとかそういう理由もなく、Xserverなら無料でSSLが使えるのでなんとなく。

このサイトはWordpressで構築しているのですが、WPのSSL化は以下の手順。

  1. まずはXserverの管理画面でドメインに対してのSSL発行
  2. WordPressの設定画面からURLの変更
  3. 内部リンクをSearch Regexで全て置換
  4. htaccessにリダイレクト用のコードを追記
  5. SSLのエラーチェック

というのがおおまかな手順。

すんなり行くかなーと思いきややっぱりそうはいかない。
こういう作業には必ず何か罠が潜んでいる。

3の「内部リンクをSearch Regexで全て置換」の所ですこし手間取りました。
Search RegexはWordpress内のデータ置き換えツールとしてそれなりにメジャー。
それで「http://~」を「https://~」で書き換えりゃOKだと思ってたんですわ。

しかし、このバンドサイトはテーマが「カスタム投稿タイプ」を使用しているんですな。
Search Regexはそのままでは投稿と固定ページ内のみしか検索で拾ってくれんようで・・・

置き換えた後、サイトを見に行くとあちこちで出るわ出るわ「混在してます」エラーが。
これだとサイトを閲覧していても非常にうっとうしい。

このWordpressテーマ「Music Club」はライブ情報の部分がスラッグ「event」のカスタム投稿タイプ。
なので、Search Regex本体を書き換える事で無理矢理対応。

WP管理画面の「プラグイン」→「プラグイン編集」からSearch Regexを選択。
そこでsearch-regex/searches/post_content.phpを選んで編集画面に入ると・・・

<?php

class SearchPostContent extends Search {
	function find( $pattern, $limit, $offset, $orderby ) {
		global $wpdb;

		$sql = "SELECT ID, post_content, post_title FROM {$wpdb->posts} WHERE post_status != 'inherit' AND post_type IN ('post','page') ORDER BY ID ".$orderby;

という感じで7行目に明確にpost(投稿)とpage(固定ページ)が宣言されております。
ここに

<?php

class SearchPostContent extends Search {
	function find( $pattern, $limit, $offset, $orderby ) {
		global $wpdb;

		$sql = "SELECT ID, post_content, post_title FROM {$wpdb->posts} WHERE post_status != 'inherit' AND post_type IN ('post','page','event') ORDER BY ID ".$orderby;

とライブ情報ページのスラッグ「event」を足してやれば、Search Regexの検索結果にライブ情報ページの物が出てくるようになります。

あと、このテーマは内部のページビルダーを使えますが
そのビルダー内で作った部分もSearch Regexでは拾ってはくれませんw
結局、手作業の方が多いじゃねえかクソ野郎!っとも思ったし、
この作業終わってから自分が書いた「[WordPress]内部のパスを一気に書き換えるスクリプト」という記事を思い出したりしてなんかもうワヤですわ。

多分「SEARCH REPLACE DB」の方が良い仕事すると思います・・・・
Search Regexで悩んでる人の為に書き記してはおきますが(笑)

« Jan 2017 February 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28