ApacheでBasic認証をかける

予算なく認証をかけるのに手っ取り早いbasic認証をかけてみました

今回はサーバーはCentos6、Apache2.4です
レンタルサーバーで、confがさわれないので、.htaccessを使います

$ vim .htaccess

AuthUserfile /home/user/www/.htpasswd
AuthGroupfile /dev/null
AuthName "Input ID and password"
AuthType Basic
require valid-user

.htpasswdがユーザー名とパスワードが保存されるファイルで、お好みの場所、ファイル名で
.htpasswdをコマンドでつくります

$ htpasswd -c .htpasswd username
(パスワード入力)

-c が新規作成です

これで、username、入力したパスワードで認証がかかります

さくらインターネットのレンタルサーバーで「suexec policy violation」エラー

さくらのレンタルサーバースタンダードプランへPHPのファイルをあげて動作確認しようとしたらエラーが..

コントロールパネルへログインして、アクセスログの設定の画面、エラーログの表示をすると

[Tue Sep 29 15:56:04 2015] [error] [client 153.185.53.193] suexec policy violation: see suexec log for more details
[Tue Sep 29 15:56:04 2015] [error] [client 153.185.53.193] Premature end of script headers: index.php

suexec log見れない..

いろいろやった結果、パーミッションがおかしかったようです

chmod -R 755 sample
とかディレクトリまるごとパーミッション変えたら動作しました

「Bundler::GemspecError: Could not read gem at 〜. It may be corrupted.」のエラー発生

bundle時にエラーが発生

Bundler::GemspecError: Could not read gem at /home/vagrant/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/cache/nokogiri-1.6.6.2.gem. It may be corrupted.
An error occurred while installing nokogiri (1.6.6.2), and Bundler cannot continue.
Make sure that `gem install nokogiri -v '1.6.6.2'` succeeds before bundling.

cacheが読めない?
nokogiriのキャッシュが2つあったので、両方消してみました

$ rm -rf /home/vagrant/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/cache/nokogiri-1.6.*

$ bundle

これでうまく行きました

Gemfileにgemspecしか書いてないのは?

gemを改造しようかと思って、gemが上がってたgithubからcloneしてGemfileを見ると

$ vim Gemfile

source 'http://rubygems.org'
gemspec

とだけ書いてありましたが

$ bundle

コマンド打つといろいろインストールされる..

ディレクトリ名.gemspecにいろいろインストールされるものが書かれてました
これが実行されるようです

gemspecで依存関係が表せるようです
bundler – gemライブラリの依存はGemfileではなくgemspecに記述する理由 – Qiita