[hello world 動かない ][検索]

プログラミング関連で自分が調べた事をメモる

centos6 php インストール

CentOS6にPHPをインストールする

バージョン

CentOS 6.6
PHP 5.3.3

インストール
sudo yum install php php-mbstring
設定を変更する

/etc/php.ini

ログの出力先変更

;error_log = php_errors.log
↓
error_log = /var/log/php_errors.log

日本語の設定

;mbstring.language = Japanese
↓
mbstring.language = Japanese

;mbstring.internal_encoding = EUC-JP
↓
mbstring.internal_encoding = UTF-8

;mbstring.http_input = auto
↓
mbstring.http_input = auto

;mbstring.detect_order = auto
↓
mbstring.detect_order = auto

その他の設定

expose_php = On
↓
expose_php = Off

;date.timezone =
↓
date.timezone = Asia/Tokyo
apache再起動
sudo service httpd restart

CentOS6.6の公式リポジトリからyumでのインストールだとPHP5.3.3が入るのだが、すでにサポートが切れているので別の方法でインストールしてバージョンを上げた方が良いのかもしれない

そうなるとapacheのバージョンも上げた方が良いのかもしれない

MobileAngularUI GoogleMapsAPI 地図 コントロール 表示されない

MobileAngularUI使用時にGoogleMapsAPIの地図のコントロールの表示がおかしい

f:id:shim0111:20150419033313j:plain

なんかコントロールが変

下記のファイルのimgタグmax-widthの定義が原因だったので
mobile-angular-ui-base.css

img {
  max-width: 100%;
}

地図領域内のimgタグのみ別の定義で上書き

#map-canvas img {
  max-width: none;
}

もっとピンポイントで指定した方が良いのだろうけど、現時点で自分が使う範囲では他に影響が出ていないのと、地図領域のdivの内容が表示サイズによって変わるのであきらめた

問題が発生した時に考える

MongoDB インストール

mongoDBをCentOS6にインストールする

バージョン
CentOS 6.6
mongoDB 2.6

公式サイトのインストール手順

http://docs.mongodb.org/master/tutorial/install-mongodb-on-red-hat/

yumリポジトリを追加する

/etc/yum.repos.d/mongodb-org-2.6.repo というファイルを作成し下記を書いて保存

[mongodb-org-2.6]
name=MongoDB 2.6 Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/
gpgcheck=0
enabled=1
インストール
sudo yum install -y mongodb-org
起動
sudo service mongod start
サービスの永続化
sudo chkconfig mongod on
設定ファイル

/etc/mongod.conf

さくら VPS 初期設定

一般ユーザー作成とパスワード設定
adduser dev
passwd dev


sudo出来るようにする
usermod -G wheel dev
visudo
## Allows people in group wheel to run all commands
%wheel ALL=(ALL) ALL


sshの鍵認証の設定
teratermで鍵を作成
Setup -> SSH KeyGenerator...
鍵作成のダイアログが開くので Generate を押して作成
passphraseは(警告は出るが)空のままでも良いので保存する

公開鍵の保管場所作成
mkdir ~/.ssh
chmod 700 ~/.ssh

~/.ssh に公開鍵を転送する
mv id_rsa.pub authorized_keys
chmod 600 authorized_keys

SSHのセキュリティを高める
vi /etc/ssh/sshd_config

Port xxxxxx # 任意のポート番号に変更
PasswordAuthentication no # パスワード認証非許容
PermitRootLogin no # ルートログイン非許容

sshd再起動
service sshd restart

CentOS Apache インストール

CentOSApacheをインストール

CentOS6.6の場合
インストール

sudo yum install httpd

起動、停止、再起動

sudo service httpd start
sudo service httpd stop
sudo service httpd restart

サーバー起動時にApache自動起動

sudo chkconfig httpd on

最低限のセキュリティ向上設定

vim /etc/httpd/conf/httpd.conf
ServerTokens Prod
ServerSignature Off

ServerTokens はHTTPレスポンスヘッダ等に埋め込まれるServerの情報の設定
Prodが一番情報量が少ない
ServerSignature はエラーページに表示されるapacheのバナー表示の設定
共に余計な情報を与えないようにするだけの設定

内にある
Options Indexes FollowSymLinks を Options -Indexes FollowSymLinks に変更
index.html等が存在しない場合に、ディレクトリの一覧を表示させないようにする設定

node.js インストール

node.jsのインストール

node.jsはバージョンアップが頻繁に行われるため、バージョン管理ツールを使ってインストールする。

バージョン管理ツールはいくつかあるようだがnvmを使用した。

まずはnvmの取得

git clone https://github.com/creationix/nvm.git ~/.nvm

nvmコマンドを使用するには下記のコマンドを実行する

source ~/.nvm/nvm.sh

ログインの度に上記コマンドを打つのも面倒なので.bash_profileに記述する。

if [ -f ~/.nvm/nvm.sh ]; then
        source ~/.nvm/nvm.sh
fi

バージョンを指定してnodejsをインストールする(2015/04/14時点の安定版)

nvm install v0.10.26

デフォルトで使用するバージョンを指定する

nvm alias default v0.10.26

取りあえず現在は最新の安定版のみインストールした。

バージョンの切り替えや、特定バージョンでのnodeの起動は

nvm use <version>
nvm run <version> app.js

とやるらしい。