自分の場合、英語で表示したかったの
以下を設定したが何も変わらず。
失敗した例:
config/application.rb
config.i18n.default_locale = :en
以下を設定したら上手く表示された。
成功した例:
config/application.rb
config.i18n.fallbacks = [:en]
[参考]
how to use rails i18n fallback features - Stack Overflow
自分の場合、英語で表示したかったの
以下を設定したが何も変わらず。
失敗した例:
config/application.rb
config.i18n.default_locale = :en
以下を設定したら上手く表示された。
成功した例:
config/application.rb
config.i18n.fallbacks = [:en]
[参考]
how to use rails i18n fallback features - Stack Overflow
file-typesを使用する。
インストール後、Atom -> Config...を選び、config.csonを開く。
その後、以下のように設定
例)liquid拡張子のファイルをRailsのERBとして割り当てる。
"*": "file-types": liquid: "text.html.erb"
設定できる設定一覧は以下。
renderではなく、「render_to_string」を使用すれば良い。
例)views/templates/_default.html.erbを使用する前提。
render_to_string partial: "templates/default", locals: { title: params[:title], body: params[:body] }
前回、NginxとGoをそれぞれインストールした。
thoames.hatenadiary.jp
thoames.hatenadiary.jp
ここでは以下の前提で設定する。
Goは「127.0.0.1:5050」で既に動作しているという前提で
話をすすめる。
$ ./app &
nginxの設定を以下のようにすれば動作する。
default.conf
server { listen 80; server_name localhost; location / { proxy_pass http://127.0.0.1:5050; } }
GoでFastCGIを使用するため
"net/http/fcgi"パッケージを使用する場合は、
以下のように設定できるっぽい。
server { listen 80; server_name localhost; location / { fastcgi_pass 127.0.0.1:5050; include fastcgi_params; } }
$ sudo service nginx restart
Supervisorという「プロセス管理/デーモン化」ツールが便利そう。
色んなサイトで紹介されていたので、使用してみる。
$ sudo yum install supervisor
$vi /etc/supervisord.conf
一番下にGoアプリの設定を以下のように追記。
アプリ名:sample
アプリのディレクトリ:/home/xxxxx/go_deploy/
アプリ実行ファイル名:app
ユーザ名:YYYYY
[program:sample] command=/home/xxxxx/go_deploy/app autostart=true autorestart=true stopsignal=TERM stdout_logfile=/var/log/supervisor/%(program_name).stdout.log stderr_logfile=/var/log/supervisor/%(program_name).stderr.log user=YYYYY
$ sudo service supervisord start
autostartがtrueになっているので、自動でスタート。
細かいプロセス管理は以下の「supervisorctl」コマンドを使用する。
www.task-notes.com
$ sudo supervisorctl status
$ sudo supervisorctl start sample
$ sudo supervisorctl status sample
$ sudo supervisorctl stop sample
/var/log/supervisor/supervisord.log
注意:テンプレートなどをGo内で使用している場合は(つまり一つのバイナリファイル内にすべてのデータが無い場合)
go-bindataなどを使用して、テンプレートやアセット系のファイルを一つのバイナリにしてあげないとsupervisorでは動作しないっぽい。。
(自分はできなかったが、他に方法をご存じの方がいれば、ご指摘いただけるとありがたいです)
[参考]
SupervisorでGolangで書かれたアプリケーションのデーモン化をした話 - こんちゃんブログ
Supervisorで簡単にデーモン化 - Qiita
適当なスクリプトをデーモン化するのにSupervisorが便利 - id:anatooのブログ
yumに入っているものは古いため、
リポジトリを登録してインストール
$ vim /etc/yum.repo.d/nginx.repo
[nginx] name=nginx repo baseurl=http://nginx.org/packages/rhel/$releasever/$basearch/ gpgcheck=0 enabled=1
$ sudo yum install -y nginx
起動しているhttpdをまずは止めてから設定
$ chkconfig httpd off $ service httpd stop $ chkconfig nginx on $ service nginx start $ systemctl status nginx
サーバのIPアドレスにアクセスすると
以下の画面が表示されます。