エンジニア的な技術的なブログ

webエンジニアの開発の知見を書きます。PHP、javascript、postgres、mysql、あと多少のインフラ周りとか。

centOS7にLAPP環境(postgresの9.3で)をインストール

<環境>

ニフティクラウド

centOS7 

 

<やりたいこと>

LAPP環境作りたい。

phpyumにある5.4でいい

postgresはyumになる9.2はダメ。9.3を入れる必要がある。

 

<なんと>

centOS7からserviceコマンドとかapachectlコマンド使えなくなってました,,,,

公開から1年近く経ってやっと7を触り始めたら、こんなことなっているのね。

 

 

<やったコマンドをダラダラと書きます>

 

apache, php

centの6とあんまり変わんない。これだけ

yum -y install httpd

yum -y install php

 

apacheは勝手に起動してくれてます。

 

【ポスグレ9.3】

1. rpmから9.3

rpm -ivh http://yum.postgresql.org/9.3/redhat/rhel-6-x86_64/pgdg-centos93-9.3-1.noarch.rpm

 

2. rpmで取得した9.3をyumでインストール

yum install postgresql93-server postgresql93-devel

yum install postgresql93-contrib.x86_64 

 

3.dbを初期化する。

/usr/pgsql-9.3/bin/postgresql93-setup initdb

 

4.postgresを起動 

systemctl start postgresql-9.3.service

 

 

基本の手順やコマンドは9.4とかでも一緒のはずなんで、参考になればと。

スマホサイトをデバッグ!USBで繋いで

 レスポンシブだとしても、PCでブラウザ縮めた時と実機のスマホで挙動が違うことはよくあります。

 

そんな時!

chromeでいう右クリックの「要素の検証」をスマホ実機でできるワザ(mac)!

windowsの方は、この記事の下の詳しくはのリンク先で説明してくれています。

 

  1. USEケーブルでPCとスマホを繋ぐ
  2. スマホデバッグしたいwebページを開く
  3. PCのクロームでURLの欄に、chrome://inspect/#devicesと打ち込む
  4. inspectというリンクをクリックする

 

するとPC上で開発者ツールが開いて、スマホデバッグできます。

 

詳しくは

http://flabo.io/code/20141205/01-chrome.usbdebug/

バーチャルホストのSSLで手間取ったのでメモ

同じクラウドサーバー(ニフティクラウド)にドメインを2つ乗せて、その2つともにSSLを設定する場合の注意点をまとめてメモしておく

(元々バーチャルホストやってないaaa.comに、運用開始後にbbb.comを乗せるような場合)

 

ドメインA aaa.com

ドメインB bbb.com

 

バーチャルホストの設定ファイルは下記のとおり

/etc/httpd/conf.d/aaa_domain.conf

/etc/httpd/conf.d/bbb_domain.conf

 

 

/etc/httpd/conf.d/ssl.conf

ここにSSLのデフォルト設定が書いてあった

下記の内容は、httpsのアクセスに対して、バーチャルホストごとの

設定で当てはまるドメイン名が無い場合に当てられる。

 

<VirtualHost _default_:443>

~ 色々と

<VirtualHost>

 

ここにaaa.comに対するssl設定が記述されていた。

これをbbb.com用に書き換えると当然元々のSSLが当たらなくなるので、ダメ。

 

bbb_domain.confに443に対するSSLの記述をしておけば、そちらが優先して適用される。

 

ので、設定ファイルにこんな感じに個別の設定を書く。

<VirtualHost 111.171.207.204:443>

~

~
SSLEngine on
SSLCertificateFile /home/bbb/ssl/server.crt
SSLCertificateKeyFile /home/bbb/ssl/server.key

<VirtualHost>

 

 

危険なのがSSLパスフレーズ

apacheの再起動にはカギのパスフレーズが必要なため、自動でパスフレーズを引き当てるための記述をするのが普通。というかマスト。

 

このパスフレーズだけは、バーチャルホストごと(SSL証明書ごと)に設定ができない。

ssl.confを開き、下記を確認した。

SSLPassPhraseDialog builtin
SSLPassPhraseDialog exec:/tmp/ssl.sh

 

今回のケースでは、aaa.comの証明書がパスフレーズ付きでそのパスフレーズを/tmp/ssl.shに記述してある。

 

この場合に対応するためには、下記のどちらかをやる。

・カギのパスフレーズを無しにする

・カギのパスフレーズを変更して、bbb.comの証明書のパスフレーズをaaa.comと同一にする

 

パスフレーズの変更、解除は下記URLを参考にしよう

d.hatena.ne.jp

忘れがちなdockerのコマンドまとめ

 

mac環境

 

#VMの立ち上げ

boot2docker up

 

#VMの状態確認

boot2docker status

 

#イメージ一覧

docker images

 

#コンテナ一覧(起動中)

docker ps

 

#コンテナ一覧(シャットダウン)

docker ps -a

 

#シャットダウンしたコンテナを立ち上げる

docker start [ CONTAINER ID ]

 

#立ち上げたコンテナに接続する

docker attach  CONTAINER ID ]

 

#コンテナの立ち上げ

docker run [ IMAGE ID ]