カテゴリー別アーカイブ: 雑記

さくらインターネットで「Let’s Encrypt」を設定してみる

2017年10月17日から、さくらインターネットで「Let’s Encrypt」がコントロールパネルから設定できる!ということで楽しみにしておりました。
スマホの普及によりあらゆる人がネットにすぐ接続できる環境で、セキュリティの弱い環境での閲覧が危険ということで、見られるサイト側でセキュリティを上げる必要があると、常時SSL化が重要となってくる中、それでもサーバ証明書は有料だし……と一般人にはなかなか敷居の高い状態でしたが……。これで、私のような個人サイトでも常時SSL化にすることができる!!ありがとう!さくらインターネット!!

ますます好きになりました。

さて、「Let’s Encrypt」をこのブログに導入してみようと思います。

1.コントロールパネルログイン

2.ドメイン一覧から証明書を設定したいドメインを選ぶ

3.証明書の登録を押す

4.「無料SSLを設定」ボタンを押す

という流れです。

途中で「ドメインは、wwwなしでなければならない」とかいろんなことが書いてあったんですが、そこは気にしなくてよかったです。

ただ、WPはそれだけではまくいかない。

「リダイレクトが繰り返し行われました。」と表示されます。ので、下記の記事を参考に対応です!

さくらのレンタルサーバでWordPressサイトを常時SSL化するとリダイレクトループが発生する場合の対処方法

さぁできた、htaccessでhttpに飛んできたのはhttpsに飛ばすぞー!と、普通に.htaccessを書き込んだら、またリダイレクト……。

htaccessも書き方に一癖あるみたいです。

最終的にはこちらの記事どおりにしました! ありがたや!

WordPressをhttps化する方法とさくらサーバーでの注意事項

modxのコントロールパネルに接続できなくて→PHPバージョン調べよう

久しぶりにmodxで構築しているサイトのコントロールパネルに接続したら、

Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future…(以下省略)

Warning: Cannot modify header information – headers already sent by…(以下省略)

とかエラーがでてまして。

 

本体サイトをあわてて見に行ったけど、そっちは問題なし。コンパネだけ?

と、しらべたら

コンパネに入れない

とまんまの質問があったので、参考にしました。PHP5.5だったら出る現象っぽいです。

 

しかし、サーバーのほう、いつのまにPHP5.5にバージョンアップされたんだろうと思っていたら、

iCLUSTAシリーズPHP5.3から5.5へのバージョンアップについて

と告知されてた。2015年7月22日には完全に切り替えだったみたい。

サーバ契約してる方にはメールが来てるんだろうけど、そういうメールも転送してもらいたいなぁとか思ったり。
レンタルサーバのメンテナンス情報、ちゃんと取得しておかなきゃなぁと思ったり。

GoogleAnalyticsがユニバーサルに勝手になってた件

(2014.11.21)下記の記事、自分で書いておいてなんだけど、なんだか違うような気もしてきたので、保留です。リンク先は参考になりますので、公開したままにしておきます。もう少しいろいろと探ってみることにします。

・セッション数が急増

・ページビュー数はそれほど変わらない

・1セッションあたりの平均ページビュー数が激減

・とあるページの閲覧開始数が急増。本当にめちゃくちゃ増えた。

という現象のあったサイトで、

自己参照 タグ付けが間違っているかページがタグ付けされていないため、プロパティ[url]に自己参照トラフィックが表示されている可能性があります。

という警告。

ウェブ トラフィックで自己参照が生じる原因

いろいろ調べていて、勝手にユニバーサル アナリティクスに変わってたことがわかりました。

緊急解説】ひと目でわかる!ユニバーサル アナリティクスへのケース別アップグレード方法(第92回)

アップグレードもしていないのに、管理画面がユニバーサル アナリティクス仕様に変わっている

トラッキングコードはそのままでもOK。
ただし、クロスドメインの設定は引き継げず、それでドメインが変わったところでセッションが切れていたもよう。
そりゃ、上のような現象が起こるのも全部説明が出来る。
ここ数日いろんなデータを並べて解析してた。もっと早く気づけと自分を腹立たしく思う。

複数ドメインのトラッキング クロスドメイン トラッキングを設定する

HTMLをPDFに変更

HTMLだとプリントするときに、個々のパソコンの設定によって背景が無かったりと印刷するものの見え方が変わってしまう。
それを避けるために、HTMLをPDFで書き出して、それを印刷するようにしたいとのことで。

調べるといろいろありますが、「mPDF」が多いようでした。

「mPDF」のサイト

関連記事

PHP で HTML から簡単に PDF を作れる mPDF

PHPでHTMLをPDF化する方法!

使用時には、使用バージョンに注意です。5.7.1以降はPH5.5以上が必要です。

文字化けした!

mPDFの文字化け修正方法

で、config.phpの「$this->useAdobeCJK = true」に訂正で、治りました。

 

タイムアウトした!

以下、ちょっと結論まで迷ったことも含めて書きますので、長くなりますが……
Fatal error: Maximum execution time of 60 seconds exceeded.というエラーが出ました。

タイムアウト……。

とある文字数以上だと、タイムアウトで終わってしまうと思っていたのですが、それは特定の文字で処理しきれていない問題みたいです。
しかも、<table>タグ内の言葉がだめなようです。
・「々」があると処理しきれない

・「(」の横に文字があると処理しきれない。(※「)」に関しては問題が出ない)

・[サワー]が駄目 「ー]」という組み合わせがひっかかっているようです。[サワー ]と、延ばした棒の前にスペースを入れると大丈夫。

・ジュースも駄目 ジュ ース と空白を入れてみるとOK。 ジュスーはOK。 ジュ ースはOK。ケチャップも駄目。以上のことから、小さな文字のあとに文字があるとダメなのかもと思い、ケチャ ッ プにしたらOK。

上記に書かれたことを気を付ければ、PDF化します。

スペースを入れたら解決したりするので、文字コードの処理とかなのかなぁと思ってしばらく考えていたのですが、テーブルのセルの横の数を減らすとうまくいくことに気付いて、

オーバーフローしているからか!と。
一つあたりのセルの幅に入りきらない文字は自動的に改行されるんですが、それがカッコとか小さい文字とかだと、かなり負荷がかかっているのかも。そこをスペースにしてやれば自動改行の判断がスムーズにいくのではないかと思いました。

ので、試しにPDFの出力さいずをA4からA4縦に

$mpdf=new mPDF(‘ja’, ‘A4-L’);

これでうまくいきました。そうか、オーバーフローの処理かぁ……(デザイナーさんに説明してたら、あっさり「オーバーフローしてたんか」と先んじて言われてショック)

 

スタイルシートがうまく読み込めない!

以下の記事を参考にしました。

mpdf ~phpからpdfを書き出すライブラリ

こちらに

//$mpdf->WriteHTML(file_get_contents(‘./style.css’), 1);

//↑ヘッダに書き込んだほうがトラブルが少ない模様

という記述があったので、それを参考にしました。

$css = file_get_contents(“../common/css/basic-style.css”);
$mpdf->WriteHTML($css,1);

こんな感じ。第2引数に「1」はスタイルシートとして読み込む意味。

WriteHTML()

 

まとめ

オーバーフローの記事とスタイルシートの読み込みさえうまくいけば、

HTMLタグの処理を一番理解してくれるライブラリではないかと思います。 

ただ、私がやったのは、データベースからコンテンツのHTMLを読み込んでそれをPDFにした方法で、サイト上にあるHTMLを読み込んでPDFにする方法は、元にあるHTMLのデータがめちゃくちゃ多かったからか(かなり行列の多いtableが複数個ある)、うまくいきませんでした。日本語対応させなかったときは日本語は出なくても形だけは出力してたので、日本語対応も負荷がかかっているのかもしれません。

その他、参考ページ

mPDFを試してみた(2)いくつかの問題点。CSSなど

mPDF 5.1で文字化け発生したので仕方なく・・・

SSHで接続とかさくらのVPSとか

SSHでサーバ接続をしなければならなくなったので、
RLoginというソフトをダウンロード。
http://nanno.dip.jp/softlib/man/rlogin/

SSHのコマンドを使ってみることにしましたが、とりあえず「圧縮してダウンロード」をしてみるために以下を読みました。

WEBデザイナーでも出来る!SSHコマンド超入門

忘れやすい人のためにscpコマンドメモ

ssh でファイル転送(SCP コマンド)

また、公開鍵を発行してほしいとかいう要望があったので、以下を参考に発行

http://www.kuins.kyoto-u.ac.jp/news/47/putty-gen.html

最近、さくらのVPSをいじる機会があったので、公開鍵とか秘密鍵とか、作ったところだったのでした。

普段こういうことをまったくしないので、仕事が仕事を呼ぶのかなぁと不思議になったのでした。

ちなみに、さくらのVPSについては以下のサイトがかなり詳しくて、ありがたかったです。

初心者でもわかる!さくらVPS – Sakura VPS マニュアル

他にもいろいろサイトがあるけど、「iで挿入モードにして、etcで挿入モードやめて、:wqで保存終わり」みたいなことイチイチ書かれてないから、最初に他のサイト見ていたら、絶対わからなかったと思います。

ただ、その丁寧な説明どおりにしていても一か所だけうまくいかなかったところがありました。

apachのデフォルトページが出なくて困ってまして、

[Linux]さくらVPSのCentOSにApacheをインストール
にあるように「apacheの起動」でservice httpd startで動かして、デフォルトのページが表示されるようになりました。もしかしたら、私が手順を抜いてたかもしれないけども…

 

そして、初心者でもわかる!さくらVPS – Sakura VPS マニュアルは、mySQLのインストールは書いてあってもpostgreSQLについては何も書いてありませんでした。
それについては、以下を参考にしました。

さくらVPSにデータベース機能を持たせる(postgreSQL編)

phppgadminのインストールは下記を参考

【まとめ】初心者がさくらVPSでWEBサービスを立ち上げるまで頑張る1

 

多くの有益な情報をありがとうございました。

あけましておめでとうございますand素敵カレンダー。

あけましておめでとうございます。本年もよろしくお願いします。
昨年はいつもの悪い癖、外にあんまり出たくないが発生して、あんまりいろんなところにお出かけしませんでしたが、今年はちょいちょい出ていきたいなと。そして、もう少し技術を磨きたいなと。

そして、毎年お世話になる、

ウェブスタジオ アラクネ さんの

シンプルな素敵カレンダーデータをダウンロードして、新年の業務は始まるのでしたー。

ここのカレンダー本当大好きー。

エクスポートしたsql文に「phpmyadmin=xxxxx」が追加される

とあるクライアントAのサイトいれているサーバーが、最近マルウェアを埋め込まれたり改竄されるため、引っ越すことに。

サーバーを直接クライアントAに提供している会社Bに相談したら、他のサーバーを用意してくれるということで、データベースだけ引っ越しておいてもらうことにした(ファイルは感染してたらいやだから、初期に導入したファイルをアップしなおすことに)。
ちなみに会社Bはレンタルサーバ会社Fからサーバーを借りて、それを提供しているらしい。だから、サーバー自体はF会社のサーバ(もうプラン自体は新規提供していない)。

そのあと、うちでCMS(XOOPS)のデータを移行。すると、XOOPSが真っ白(よくある表現ですが)。

phpmyadminなどの情報は聞いてなかったから、非常事態対応的にphpmyadminをサーバに入れて、データベースからデバックをonにしてみたら、テンプレートの記述がおかしいというエラーが出る。

<{$category_id}&phpMyAdmin=595………> みたいに。そりゃ、Smartyもエラーになるわ。うんうん。その一か所を直したら、また他の箇所で同じようなSmaryのエラーが出るので、phpmyadminいれちゃったし、ついでに全部エクスポートして、「phpmyadmin=」を検索してみたら、テンプレート以外にも変な記述が複数あることに気づきました。

1.テンプレートに「<{$category_id}&phpMyAdmin=595………>」という記述が追加されいてる。

2.<a href=””>のリンク先の末尾に、「?phpMyAdmin=595………」という記述が追加されいてる。

3.<a href=””>のリンク先が 「?id=2」みたいな記述だったら「?id=2&phpMyAdmin=595………」という記述が追加されている。

4.<form>タグがあったら、<input type=”hidden” name=”phpMyAdmin” value=”595………” />というコードが追加されている。

怪しすぎる!!!怖い!気持ち悪い!!

自分で、旧サーバにphpmyadminを入れてエクスポートしてみたら、そんな記述はないから、XOOPSのデータか何かに埋め込まれているわけではなさそうです。

新サーバのツール使ってインポートしたときにそうなったとは考えにくいので、おそらく旧サーバで何かのツールでエクスポートしたときにそうなった可能性が高そうです。

今までの経緯でも、ンタルサーバ会社Fが使用している、サーバのコントロールパネル「Parallels Plesk Panel」の脆弱性が怪しそうです。その「Parallels Plesk Panel」のツールを使って、sqlのエクスポートをしたそう。

続きを読む

GMOクラウド(旧アイル)のレンタルサーバで「Internal Server Error」

昨日、アイル(現GMOクラウド)でレンタルしていたサーバーのサイトが、急に「Internal Server Error」と表示されていました。CMSを入れているサイトなので、その不具合かと思ったのですが(しかし、何もいろってないよ)、例えば「blog」というフォルダ以下はエラーが出ていない。

ルートに入れたPHPファイルのみエラーがでます。

GMOクラウドのサイトに行くと、こんなニュースが

PHPのバージョンアップのご案内
http://shared.gmocloud.com/news/2013/130530.html

php.iniを独自で入れている場合、

cgi.force_redirect = 0

をいれておかないと「Internal Server Error」と出るそうな。

たしかに、ドキュメントルートにだけ「php.ini」を独自に作って入れていました。

php.iniをわざと作っていない限りは関係ないのですね。そして、php.iniはその階層でしか効果がないと。

ちなみにタイムゾーンの設定もしておくとよいみたい。
date.timezone = Asia/Tokyo
この設定なくてWarningが出てるのは過去にもあったのでメモメモ。

modxのcfFormMailerで画面遷移エラー

modxのcfFormMailerを使用して、メールフォールを実装しています。
3月23日のテストのときは、問題なく動いていたのに、今日、実際にテストすると確認画面後の「送信」をクリックしたところで「画面遷移が正常に行われませんでした」というエラーが発生。

なんと

GoogleChromeでも、FireFoxでも、InternetExplorer9でも、同じエラーがでます。
なぜか、Firefoxのときに一度送信できたのと、GoogleChromeのときに、「画面遷移が正常に行われませんでした」が出たときに、「更新」ボタンを押したら1度送れることができました。

なんでだろう。
とりあえず、「画面遷移が正常の行われませんでした」が出る場合のエラーの理由をソースを読んで調べてみました。
ワンタイムトークンが違うーって言ってるみたい。

では、とワンタイムトークンが発行されたときのSESSION[‘_cffm_token’]値、確認画面でのhiddenのticketの値、送信後のSESSION[‘_cffm_token’](以下、SESSIONに省略)値、ticket値などを出力してみました。(基本的にvar_dump値で)

すると、確認画面でのSESSIONの値と、送信後のSESSIONの値が変わっていました。
もしくは、送信後のSESSIONの値が NULLになってる。

php_infoを調べて、session周りの設定を見てみる。すると、session.save_pathの値が、no_valueになってる!

あれ?と思い、2月に出力していたphp_info()を見てみると、値が入っている。いまのphp_infoとよくよく見てみると、どうもサーバーの設定が違う。Systemに書いてある値などが違う。

サーバーの内容、変わってんじゃん

ということで、php.iniでsession.save_pathの値を設定し、そのフォルダを書き込み可能にしたら、画面遷移するようになりました。

名前が変わっても相変わらず、私を悩ませる「旧アイ○」。現在「GM○クラウ○」。
ここに入れているサイトは、エラーがでたら、まず「サーバーじゃねーの。また仕様がかわったんじゃねーの」って疑う癖がついたけど、あながち間違いでもないかもしれません。

アイルのiclustaにphpmyadmin入れた。

もう、どうしようもないし。
iclustaにphpmyadmin入れられるみたいだったし。
下記記事参考にして、入れました。

アイルのサーバにWordPressを入れようとしてつまづいた

ありがとうございます。

しかし、MTもWPも、メモリ増設必須って。
だから、稼働率高いか?しらんけど。

WPはメモリ増設1こ。
MTはメモリ増設2こ。らしいです。
http://faq.isle.jp/FaqItem?i_categoryId=113&i_faqId=376

ここ(http://home.isle.ne.jp/iclusta/features/application.html)に、明示しておいてほしい。
ここにも(http://home.isle.ne.jp/iclusta/option/wordpress/)。
ここにも(http://home.isle.ne.jp/iclusta/price/#c_app)な!!(怒)

インストール代行(http://home.isle.ne.jp/iclusta/option/)にメモリ増設は含まれるのか?。と思ったら、別ページ(http://home.isle.ne.jp/service/iclusta/option/setup/)には別途必要と。
もう、標記の統一しておいてよー!!

こんなに何年もわたって惑わしてくれるサーバーはここだけだ。
でも、10年ほど前、何も知らない時代にはここがよいって先輩にすすめられたんだよ。その名残さ。