Railsの確認


投稿日2015/01/26


Railsの動作確認・Webサーバの設定について説明していきます。各設定をを行います。環境構築を何回かに分けて明記しています。OSはCentOSです。

Railsアプリケーションの動作確認

rake secret

で作成した文字列をコピーします。

secret.ymlを開きます。

vi home/appname/rails_root/config/secret.yml

以下の部分に文字列を挿入します。

production:
  secret_key_base: "ここに挿入"
  • home/appname/rails_root/config/secret.ymlは.gitignoreに追記しましょう。

  • apacheをrestartします。

  • Webブラウザから設定したドメインにアクセスします。 ※ ドメインをお名前.comなどで取得した場合などはそちらにも設定が必要となります。

  • 表示されればOKです。

キャッシュ制御

エディタで/etc/httpd/sites-available/appnameを開きます。

sudo vi /etc/httpd/sites-available/appname
  • appnameは適宜変更してください。

の直前に以下を追記します。

<Directory "/home/appname/rails_root/public/assets/">
  ExpiresActive On
  ExpiresDefault "access plus 1 year"
  Header set Cache-Control "public"
  Header unset ETag
  FileETag None
</Directory>
  • appnameは適宜変更してください。

Gzipによる圧縮

エディタで/etc/httpd/sites-available/appnameを開きます。

sudo vi /etc/httpd/sites-available/appname
  • appnameは適宜変更してください。

下記の内容をFileETag Noneの直後(</Directory>の直前)に挿入して下さい。

AddEncoding x-gzip .gz
Header set Vary Accept-Encoding

RewriteEngine on
RewriteCond %{HTTP:Accept-Encoding} \b(x-)?gzip\b
RewriteCond %{REQUEST_FILENAME}.gz -f
RewriteRule ^(.*)$ $1.gz [L]

<FilesMatch \.css\.gz$>
  ForceType text/css
</FilesMatch>

<FilesMatch \.js\.gz$>
  ForceType text/javascript
</FilesMatch>

エラーページの指定

エディタで/etc/httpd/sites-availale/appnameを開きます。

sudo vi /etc/httpd/sites-available/appname
  • appnameは適宜変更してください。

次の内容をRackEnvの直後に挿入してください。

ErrorDocument 404 /404.html
ErrorDocument 500 /500.html
ErrorDocument 502 /500.html
ErrorDocument 503 /500.html
ErrorDocument 500 /500.html

ログファイルのパスと出力形式

エディタで/etc/httpd/sites-availale/appnameを開きます。

sudo vi /etc/httpd/sites-available/appname
  • appnameは適宜変更してください。

次の内容をRackEnvの直後に挿入してください。

CustomLog /var/log/httpd/appname_access.log common
ErrorLog /var/log/httpd/appname_error.log
  • appnameは適宜変更してください。

HTTPレスポンスヘッダの追加

エディタで/etc/httpd/sites-availale/appnameを開きます。

sudo vi /etc/httpd/sites-available/appname
  • appnameは適宜変更してください。

下記をセクションまたはセクションの中に記述します。

Header set X-Frame-Options SAMEORIGIN
Header set X-Content-Type-Options nosniff
Header set X-XSS-Protection "1; mode-block"

リクエストボディのサイズ制限

LimetRequstBody 1073741824

Basic認証

パスワードファイルにguestユーザを追加

sudo -u appname htpasswd -c /home/appname/.htpasswd guest

guestユーザを削除するとき

sudo -u appname htpasswd -D /home/appname/.htpasswd guest

エディタで/etc/httpd/sites-availale/appnameを開きます。

sudo vi /etc/httpd/sites-available/appname
  • appnameは適宜変更してください。

ブロックを次のように追記します

<Directory /home/appname/rails_root/public>
  AllowOverride all
  Options -MultiViews
  AuthType Basic
  AuthName "Welcome to appname"
  AuthUserFile /home/appname/.htpasswd
  Require valid-user
</Directory>

Tags

Date

  1. 2015年 (14)
    1. 3月 (2)
    2. 2月 (3)
    3. 1月 (9)