rails 项目部署中 nginx 报错及解决方法

Posted 小鱼#

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了rails 项目部署中 nginx 报错及解决方法相关的知识,希望对你有一定的参考价值。

 

1. 报403错误,是因为启动nginx的用户默认是nobody,没有对项目目录的访问权限。

user  myName;
worker_processes  2;

 

2. 报404错误,是因为在nginx.conf中未配置passenger

server {
        listen       80;
        server_name  localhost;
        passenger_enabled on;

 

3.  Missing `secret_token` and `secret_key_base` for ‘production‘ environment, set these values in `config/secrets.yml`

Rails 4 出于安全考虑,需要在production 的情况下 ,生成一个key,通过 web_app/config/secrets.yml 读取。由于安全方面的考虑,此key值不建议放入svn然后通过capistrano 发布。

标准准做法如下:
        在服务器上 rake secret RAILS_ENV=production 生成key
        在shell中 export 到环境变量中
        secrets.yml 不用做变化。依然保持原有代码,从环境变量中读取key值

production:  
        secret_key_base: <%= ENV["SECRET_KEY_BASE"] %>  

 

以上是关于rails 项目部署中 nginx 报错及解决方法的主要内容,如果未能解决你的问题,请参考以下文章

跑Vue项目遇到的报错及解决方法

跑Vue项目遇到的报错及解决方法

跑Vue项目遇到的报错及解决方法

跑Vue项目遇到的报错及解决方法

centos7编译安装LNMP(nginx-1.16.0,mysql8.0.16,php-7.3.6)常见问题报错及解决方法

日志收集===》zookeeperkafka部署报错及解决,常用命令