解决办法: 把 "config/environments/production.rb" 中的 "config.assets.compile = false" 改为 "config.assets.compile = true" ; 使用下面这个命令编译(压缩)了无数遍,终于成功了。
RAILS_ENV=production bin/rails assets:precompile
不知道"=true"和"=false" 是个什么鬼,到底是使用编译(压缩)啊?还是不使用编译(压缩)啊?
We're sorry, but something went wrong.If you are the application owner check the logs for more information.
难就难在这儿了~ nginx.conf 配置了 10+ 次,最后还是出在 nginx.conf 上了。
server {
listen 80;
server_name 192.168.3.80;
passenger_enabled on;
rails_env production;
location / {
root /home/wotogo/devices/public;
index default.php index.php index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
这个配置是正确的。折腾的时候在两个地方都加了 "passenger_enabled on;" 和 "root /home/wotogo/devices/public" ,反反夫妇(复复)。一直是访问“3000”正常,访问“80”报错。log 也看过了,里没有什么东西。一直觉得,得先运行 "rails s -e production" nginx 才能找到进程,后来才明白,没必要,nginx 能找到目录并调用 ruby 去运行。这一点,google 根本没有告诉我!!!
"server_name" 也让我纠结,因为我的域名还没“实名”,暂用 IP 地址。却不知道这个“server_name”该设为“127.0.0.1”还是 "0.0.0.0" 还是“192.168.3.80”还是公网 IP 呢?这真是个问题~
marking...