WEB

apacheでstopやrestartが出来なくなった場合

現象

apacheでstopやrestartをするとエラーになって、stopもrestartも出来なくなる現象が発生しました。
startは出来ます。

restartの時は、stopが失敗するので、startで既に80番ポートが使用されているというエラーに。

環境

CentOS
Apache2.3

原因

原因は、httpd.confと/etc/rc.d/init.d/httpdでpidファイルのパスの指定がずれているからでした。
pidファイルのパスを合わせてあげると、stop、restartが出来るようになります。

/etc/rc.d/init.d/httpdでのpid指定箇所

pidfile=xxxxxxxx

それでも解決しない場合

もし、pidファイルのパスが一致している場合は別の原因です。
いろいろ試して原因が見つからない又は、さくっと停止、再起動したい場合は、
無理矢理プロセスをkillすることでapacheを停止 or 再起動(起動)することが出来ます。

以下、apacheのプロセスをkillする手順

1.apacheのプロセスを確認

$ ps aux | grep httpd
root    2354 2.1 3.7 15138 7719 ?   Ss  11:13  0:00 /usr/sbin/httpd

2番目の「2354」の部分がpid(プロセス番号)になります。

2.確認したプロセスのpid(プロセス番号)を指定してapacheを停止

$ kill [pid]

apacheのSSL(https)でVirtualHostを設定しても通信できない場合

ApacheでVirtualHost(vhosts)でSSL(https)の設定をしているのに、httpsで通信が出来ない事態が発生。
原因は初歩的なとこでした。。。

基本、ssl.confを読み込んでいれば、問題ないと思うのですが、
今回はサーバー移行作業で移行前の設定を持って来たので、もれてしまっていました。

原因は、「Listen」の記述が無いためでした。

Listen 443

です。

今回は、httpd.confに追記しました。

もし、apacheでhttpsの通信が出来ない場合は、チェックしてみてください。

【PHP】クラス定数の文字列連結

phpのクラス定数で文字列連結ができるのは、PHPのバージョンが5.6.0以降になります。

phpのクラス定数の基本的な使い方

<?php
class MyClass
{
    const CONSTANT = 'constant value';

    function showConstant() {
        echo  self::CONSTANT . "\n";
    }
}

echo MyClass::CONSTANT . "\n";

$class = new MyClass();
$class->showConstant();

php5.3.0以降で使用可能なクラス定数

変数を用いてクラスを参照することが可能になりました。
ヒアドキュメントや Nowdoc を用いた定数の初期化も使用できるようになりました。

<?php
class MyClass
{
    const CONSTANT = 'constant value';

    function showConstant() {
        echo  self::CONSTANT . "\n";
    }
}

// 変数を用いてクラスを参照
$classname = "MyClass";
echo $classname::CONSTANT . "\n"; // PHP 5.3.0 以降で対応

// 変数を用いてクラスを参照
$class = new MyClass();
echo $class::CONSTANT."\n"; // PHP 5.3.0 以降で対応


class foo {
    // PHP 5.3.0 以降で対応(Nowdoc)
    const BAR = <<<'EOT'
bar
EOT;
    // PHP 5.3.0 以降で対応(ヒアドキュメント)
    const BAZ = <<<EOT
baz
EOT;
}

php5.6.0以降で使用可能なクラス定数

数値リテラルや文字列リテラルそして定数を含むスカラー式を指定できるようになりました。

const ONE = 1;

class foo {
    // PHP 5.6.0 以降
    const TWO = ONE * 2;
    const THREE = ONE + self::TWO;
    const SENTENCE = 'The value of THREE is '.self::THREE;
}

GIMPで枠線(囲み線)を描く

GIMPで枠線(囲み線)の書き方というか、描き方をご紹介します。

矩形(くけい)選択をクリック

ツールボックス左上にある矩形選択を選びます。

[peg-image src="https://lh3.googleusercontent.com/-vk1Cxl6NAOo/V2K-_cnwAEI/AAAAAAAAATA/MU40Yi_t-6Mx8oR6l7Idvsw6C-i0Y3EGACHM/s144-o/%25E3%2582%25B9%25E3%2582%25AF%25E3%2583%25AA%25E3%2583%25BC%25E3%2583%25B3%25E3%2582%25B7%25E3%2583%25A7%25E3%2583%2583%25E3%2583%2588%2B2016-06-16%2B23.55.39.png" href="https://picasaweb.google.com/107888545635181725503/Web#6296805226241327170" caption="スクリーンショット 2016-06-16 23.55.39.png" type="image" alt="スクリーンショット 2016-06-16 23.55.39.png" image_size="157x479" ]

枠線で囲みたい部分を矩形選択する

ドラックアンドドロップで枠線で囲みたい部分を選択します。

[peg-image src="https://lh3.googleusercontent.com/-th8oXI2NWVY/V2K-_YrjrTI/AAAAAAAAATA/ippWU5MsDyQfrfvx6X2_xN2j3AmKIzyiQCHM/s144-o/%25E3%2582%25B9%25E3%2582%25AF%25E3%2583%25AA%25E3%2583%25BC%25E3%2583%25B3%25E3%2582%25B7%25E3%2583%25A7%25E3%2583%2583%25E3%2583%2588%2B2016-06-16%2B23.56.19.png" href="https://picasaweb.google.com/107888545635181725503/Web#6296805225183554866" caption="スクリーンショット 2016-06-16 23.56.19.png" type="image" alt="スクリーンショット 2016-06-16 23.56.19.png" image_size="324x240" ]

「選択範囲の境界線を描画」をクリック

「編集」 > 「選択範囲の境界線を描画」をクリック

[peg-image src="https://lh3.googleusercontent.com/-dJee7KewVCA/V2LB88zOkHI/AAAAAAAAATw/J-EmKrwjsRIT_pVYzi6em4mZaiQqmmODACHM/s144-o/%25E3%2582%25B9%25E3%2582%25AF%25E3%2583%25AA%25E3%2583%25BC%25E3%2583%25B3%25E3%2582%25B7%25E3%2583%25A7%25E3%2583%2583%25E3%2583%2588%2B2016-06-16%2B23.56.37.png" href="https://picasaweb.google.com/107888545635181725503/Web#6296808481874677874" caption="スクリーンショット 2016-06-16 23.56.37.png" type="image" alt="スクリーンショット 2016-06-16 23.56.37.png" image_size="271x375" ]

境界線を描く

境界線描画のダイアログが表示されるので、線の幅やスタイルを入力し、「描画」ボタンをクリック

[peg-image src="https://lh3.googleusercontent.com/-JefzybhP0Es/V2K-_VvXmkI/AAAAAAAAATA/AvjN6aXtlvUNyGKMBMKtIUTC0sh8LHbegCHM/s144-o/%25E3%2582%25B9%25E3%2582%25AF%25E3%2583%25AA%25E3%2583%25BC%25E3%2583%25B3%25E3%2582%25B7%25E3%2583%25A7%25E3%2583%2583%25E3%2583%2588%2B2016-06-16%2B23.57.05.png" href="https://picasaweb.google.com/107888545635181725503/Web#6296805224394234434" caption="スクリーンショット 2016-06-16 23.57.05.png" type="image" alt="スクリーンショット 2016-06-16 23.57.05.png" image_size="418x376" ]

枠線が描画されます。

[peg-image src="https://lh3.googleusercontent.com/-P1OijKy-0BM/V2K-_aJcrII/AAAAAAAAATA/CfdtTmHatys5-ompAj8Bitnd3qlDgNn4gCHM/s144-o/%25E3%2582%25B9%25E3%2582%25AF%25E3%2583%25AA%25E3%2583%25BC%25E3%2583%25B3%25E3%2582%25B7%25E3%2583%25A7%25E3%2583%2583%25E3%2583%2588%2B2016-06-16%2B23.57.20.png" href="https://picasaweb.google.com/107888545635181725503/Web#6296805225577360514" caption="スクリーンショット 2016-06-16 23.57.20.png" type="image" alt="スクリーンショット 2016-06-16 23.57.20.png" image_size="297x212" ]

画像を上書き保存

「ファイル」 > 「[画像ファイル名]に上書きエクスポート」をクリックで、上書き保存できます。
「保存」や「名前を付けて保存」だとpngやgif、jpgで保存できないので、元の拡張子で保存したい場合は上書き保存します。

[peg-image src="https://lh3.googleusercontent.com/--Bq77pGvgqQ/V2LB88xu-hI/AAAAAAAAATw/W7M1VVs82uE-nSW1Wh1Otf3YB-18tyj7ACHM/s144-o/%25E3%2582%25B9%25E3%2582%25AF%25E3%2583%25AA%25E3%2583%25BC%25E3%2583%25B3%25E3%2582%25B7%25E3%2583%25A7%25E3%2583%2583%25E3%2583%2588%2B2016-06-17%2B0.11.18.png" href="https://picasaweb.google.com/107888545635181725503/Web#6296808481868413458" caption="スクリーンショット 2016-06-17 0.11.18.png" type="image" alt="スクリーンショット 2016-06-17 0.11.18.png" image_size="544x433" ]

以上で完了です。

枠線の色を変えたい場合は?

ツールボックスの「現在の描画色」をクリックし、色を変更した後に枠線の描画を行います。

[peg-image src="https://lh3.googleusercontent.com/-2T3KbdQigwM/V2LEI9G_gzI/AAAAAAAAAUI/c2TR7ZsnkuQFVHGNFAGPDM41bKjScXzDgCHM/s144-o/%25E3%2582%25B9%25E3%2582%25AF%25E3%2583%25AA%25E3%2583%25BC%25E3%2583%25B3%25E3%2582%25B7%25E3%2583%25A7%25E3%2583%2583%25E3%2583%2588%2B2016-06-17%2B0.21.13.png" href="https://picasaweb.google.com/107888545635181725503/Web#6296810887139263282" caption="スクリーンショット 2016-06-17 0.21.13.png" type="image" alt="スクリーンショット 2016-06-17 0.21.13.png" image_size="160x340" ]

お疲れさまでした。

【wordpress】Googleフォトにある画像を表示するプラグイン

wordpressで画像を表示する際に、Googleフォトにアップロードしてある画像を表示するプラグイン「Photo Express for Google」をご紹介します。

以前はプラグインを使わず、右クリックで「画像アドレスをコピー」してimgタグで表示してました。
が・・・少し経つと画像が表示されなくなるという事態に。。。

なので、プラグインを使用してGoogleフォトにアップロードしている画像を表示することにしました。

使用するプラグインは「Photo Express for Google」というプラグインです。
簡単に画像を挿入することができ、画像のサイズ指定なども出来てすごい便利です!

こんな感じで、投稿画面でGoogleフォトの画像がモーダル上に表示されて、クリックで簡単に画像を挿入できます。

[peg-image src="https://lh3.googleusercontent.com/-nVeVuWBpYak/V1bixMEvTNI/AAAAAAAAAN0/93vWZL2mdfwQofjEGWCe61AqbTk0smV0wCHM/s144-o/%25E3%2582%25B9%25E3%2582%25AF%25E3%2583%25AA%25E3%2583%25BC%25E3%2583%25B3%25E3%2582%25B7%25E3%2583%25A7%25E3%2583%2583%25E3%2583%2588%2B2016-06-08%2B0.01.10.png" href="https://picasaweb.google.com/107888545635181725503/Web#6293466863979416786" caption="Photo Express for Googleモーダル" type="image" alt="Photo Express for Googleモーダル" image_size="992x592" ]

Photo Express for Googleをインストール

プラグイン新規追加で「Photo Express for Google」を検索し、インストール

[peg-image src="https://lh3.googleusercontent.com/-K6UKCWEdKXc/V153jsjh0aI/AAAAAAAAAOc/y656T8bSQswNKlRnZNx0WJXFeU-1va-mACHM/s144-o/%25E3%2582%25B9%25E3%2582%25AF%25E3%2583%25AA%25E3%2583%25BC%25E3%2583%25B3%25E3%2582%25B7%25E3%2583%25A7%25E3%2583%2583%25E3%2583%2588%2B2016-06-07%2B22.45.09.png" href="https://picasaweb.google.com/107888545635181725503/Web#6295600784249835938" caption="Photo Express for Googleをインストール" type="image" alt="Photo Express for Googleをインストール" image_size="1085x486" ]

「プラグインを有効化」リンクをクリック

[peg-image src="https://lh3.googleusercontent.com/-EsWYD39NGNQ/V1561_nAXFI/AAAAAAAAAPw/Sj2GijuG0HEgSEadgv8rYPbTMQDiwYmqQCHM/s144-o/%25E3%2582%25B9%25E3%2582%25AF%25E3%2583%25AA%25E3%2583%25BC%25E3%2583%25B3%25E3%2582%25B7%25E3%2583%25A7%25E3%2583%2583%25E3%2583%2588%2B2016-06-07%2B22.45.36.png" href="https://picasaweb.google.com/107888545635181725503/Web#6295604397137222738" caption="プラグインを有効化" type="image" alt="プラグインを有効化" image_size="853x233" ]

続きを読む