魔法使いの卵

WEBエンジニアの卵の成長記録

さくらVPSにいれたNginxでベーシック認証をやってみた

パッケージのインストール sudo yum install -y httpd-tools .htpasswdファイルの作成 作成したいユーザの名前を入れてる sudo htpasswd -c /etc/nginx/.htpasswd username 作成したユーザのパスワードを入れる New password: password Re-type new password…

僕の理想とするNginxの導入方法ができた

はじめに ソースビルドもやったしパッケージもやった でも、本当にこれでいいのかなぁ・・・ってもやもやがあった 今回は考えたもやもやと出した結論と解決した方法をまとめておく いい方法があればぜひ知りたい・・・ ソースビルとパッケージのメリット・デ…

さくらVPSにソースビルドでいれたNginxをアンインストールする

ソースビルドで入れたNginxをアンインストールする 一旦Nginxを止める sudo service nginx stop nginxのソースファイル以外の場所を確認する sudo find / -name "nginx".* prefixがデフォルトの状態だと全て/usr/local/nginx/配下にいるため消す sudo rm -rf…

さくらVPSの初期設定後にまっさきにいれたツール

パッケージツールの更新 更新コマンド sudo yum update -y 利用するツールを入れる 今回導入するツール 入れるもの 用途 git バージョン管理 tmux ターミナルの多重化ソフト vim エディタ インストールコマンド sudo yum install -y git tmux vim gitのバー…

さくらVPSでPHPのバージョンを管理する

phpenv + php-buildでphpのバージョンを管理する環境を作る EPELリポジトリを追加 sudo yum install -y epel-release.noarch phpenvとphp-buildを入れる curl -L https://raw.github.com/CHH/phpenv/master/bin/phpenv-install.sh | bash git clone git://gi…

さくらVPSにMacからポートフォワーディングで接続する

もう鍵をサーバごと作りたくない理由 セキュリティ的に複数の鍵を管理するのが怖い githubの鍵が増えすぎて気が狂いそう 漏洩時どこから漏洩したのか分からなさそうで怖い ポートフォワーディングをすることで何が嬉しいの? 鍵を複数管理しなくていい セキ…

さくらVPSにNginxをソースビルドで入れた

ソースビルドでnginxを入れる 必要なライブラリ 必要なライブラリ 役割 pcre pcre-devel perl互換の正規表現用 zlib zlib-devel gzip圧縮用 openssl openssl-devel SSLツール wget HTTPやFTP経由のファイル取得を行えるツール ncurses-devel インストール・…

さくらVPSを契約した時にやったこと

VPSってなに VPSとはVirtual Private Server(仮想専用サーバー)の略です。 ホームページを公開する際にはレンタルサーバーが必要となります。 共有サーバーだとちょっと機能が足りなかったり、専用サーバーだと価格が高かったりするので、その中間にある比…

MySQL Workbenchを使い始めた忘備録

MySQL Workbenchとは データベースアーキテクト、開発者、DBA のための統合ビジュアルツールです。 MySQL Workbench は、データ・モデリング、SQL 開発、およびサーバー設定、ユーザー管理、バックアップなどの包括的な管理ツールを提供します。 ダウンロー…

開発環境構築を自動化してみた

経緯 開発環境構築を手動で作りたくない(めんどくさい) 開発環境を1から作るのって何回やってもめんどくさい。 手順さえ作ってしまえば人間がやる必要ないとおもったので 規模はともかく簡単に楽できることからはじめようとおもった。 プロビジョニング使う…

githubのテンプレートが予想上に便利だった話

概要 最近チームで導入したgithubのテンプレートがよかったので簡単にメモ書き程度に書き残しておく プルリクエストのテンプレ化で目指したもの 以下、目指していたもの レビュアーの負荷軽減のために予め作成しておいたテンプレートを コピペすることで誰が…

もうすぐエンジニア歴3年目に突入する僕が3年前の僕に伝えたいこと

経緯 タイトル通りもうすぐ社会人3年目でエンジニア歴も3年目になる。 最近、サポートをする機会が増えてきて その際に過去の自分を垣間見ているような気分になった。 だから、僕はもうすぐエンジニアとして社会人になる頃の 自分に向けて絶対に届かないメッ…

僕がNginxと少し仲良くなるためにやったこと

僕がNginxと少し仲良くなるためにやったことのまとめ raichel.hatenablog.com raichel.hatenablog.com raichel.hatenablog.com raichel.hatenablog.com raichel.hatenablog.com raichel.hatenablog.com raichel.hatenablog.com 感想 去年11月の一ヶ月間勉強…

2015年振り返り

振り返り 今年学んだ技術的なことをざっくりと振り返っていく 今年ざっくり何してたの Nginxとmysqlとphpの環境構築 シェル芸 namespaceとオートローダー テスト jenkins docker centos ubuntu phpenv etc やってきたことについて 一年目の時になんとなく使…

黒い画面と少し仲良くなれるきっかけ

はじめに この記事は株式会社アイスタイル アドベントカレンダー8日目の記事です。 新卒2年目の@Raichel395がゆるゆる書いてます。 今日は約2年前エンジニアになりたての僕が怯えて友達になった黒い画面の話です。 黒い画面と友達になるためにはどうしたらい…

新規サーバにPHP7+Nginxの環境を構築する

新規サーバに以下の環境を作成する CentOS7.1 PHP 7.0.0 Nginx1.8.0 SELinuxを殺す 一時的に殺しておくsudo setenforce 0 再起動後も殺しておくsudo vim /etc/selinux/config - SELINUX=enforcing + SELINUX=disabled Nginxのyumリポジトリを追加 sudo rpm -…

nginx.confの構造について学んだ

nginx.confのブロック構造について nginx.confはブロック構造になっている ブロックは大きく分けて3つある ブロック名 説明 http 設定ファイルのルートに設定する(nginx.confとかに)。http関連のモジュールがディレクティブやブロックなどを定義している。 s…

Nginxのパフォーマンステストの方法とチューニングのメモ

Nginxのパフォーマンステストの方法とチューニングのメモ テストツールの種類と特徴 テストツール 説明 httperf HPが開発した有名なオープンソース(Linux専用) Autobench httperfのラッパー。テストのメカニズムや詳細レポートの作りを改良している OpenWebL…

マシンスペック別のnginx.conf推奨設定(簡易ver)

設定で気をつける点 ワーカープロセス数とworker_connections(接続数)の設定に注意 プロセス数の設定は必ずコア数に合わせること worker_connections(接続数)の設定値が小さすぎると接続を拒否される worker_connections(接続数)の設定値が大きすぎるとRAMが…

nginx.confの初期設定で気をつけたいこと

権限の設定 ワーカープロセスを指定のUserの元で起動するようにする 以下の設定は全ての権限を付与しているためセキュリティ上危険 ☓ user root root; nginxというUserとgroupを事前につくり設定して上げるほうが良い ◯ user nginx nginx; ワーカープロセス…

nginx.confが読めるようになる

ブログと記事は以下に移転しました raichel.tech

Nginxのコマンドについて

コマンドリストを出してみる nginx -h nginx version: nginx/1.8.0 Usage: nginx [-?hvVtq] [-s signal] [-c filename] [-p prefix] [-g directives] Options: -?,-h : this help -v : show version and exit -V : show version and configure options then …

Nginxのコマンドについて(手動ver)

手動ver前提 こちらはパスを通していないことを前提とする コマンドのリストを出してみる /usr/local/nginx/sbin/nginx -h nginx version: nginx/1.9.6 Usage: nginx [-?hvVtTq] [-s signal] [-c filename] [-p prefix] [-g directives] Options: -?,-h : th…

CentOS7にNginxをいれてみた(手動ver)

必要になるもの GCC コンパイラーツール(基本的にデフォルトで入っている) PCRE Nginxのコンパイルで利用するPerl互換正規表現ライブラリ ライブラリとソースが必要 zlib モジュールの圧縮に必要になる ライブラリとソースが必要 OpenSSL セキュアなwebペー…

CentOS7にH2Oを入れてみた

概要 CentOS7にH2Oを入れてみる なるべく必要最低限で実現する 環境 OSX Yosemite 10.10.4 VirtualBox 4.3.24 Vagrant 1.7.2 CentOS7.0x86_64 H2Oの導入の注意 どこのバージョンからなのかの検証は行っていませんが、cmakeを行うタイミングでエラーが発生す…

phpenvで複数php(php-fpm)を管理した時に湧いてきた疑問

疑問 [前提] nginxでphp-fpmを利用してphpが動作する環境は作った。 [疑問] 複数のversionを取り扱う時nginxはphp-fpmを何基準で読み取るんだっけ? 仮説 そもそもnginxにパスの設定とかしてないのになんで任意のphp-fpmがうごいているんだろうか パスの設定…

Nginxでphpを動かす環境@phpenv

環境 vagrant virtualbox CentOS7 注意 phpenvのglobalでは検証していません(使う予定がない為) 全てphpenvのlocalの話になります 今回用意したphpは作成時最新だった7.0.0RC5になります vagrantを使っている場合はhostの変更は以下プラグインがおすすめです…

php-fpmのパスを自動で切り替えるツールをリリースした

注意 phpenvを使っている人が対象のツールになります。 作ったもの github.com 作ろうとおもった理由 phpenvでphpのversionは簡単に切り替えれるのにphp-fpmのパスの切り替えは手動は辛い 誰か作ってないかなってさがすが情弱のために見つけられない 見つけ…

Linuxの自分だけのコマンドを作ってみる

コマンドの中身を作るディレクトリを決める 今回選択したのは以下のディレクトリ /home/vagrant/.self コマンドで実行する処理を作成する ファイル内は先頭に#!/bin/shを書くようにする $ vim .self/hello #!/bin/sh echo "HelloWorld!" 権限を変える 誰でも…

CentOS7でPHPのバージョンを管理する

やりたいこと PHP7触りたい php5系もいつでも触りたい バージョンごとに環境を作りたくない(めんどくさい) PHPそのものを管理しちゃおうぜ 環境 CentOS7.0 EPELのリポジトリのインストール sudo yum install epel-release phpenvとphp-buildを入れる curl -L…