我正在从使用不同版本的 ruby 和 rails 的不同书籍中学习 rails。现在我在 Mac OS X Snow Leopard(在/usr/bin)上安装了 ruby 1.87 ,但还需要将 ruby 1.9 用于不同的 rails 应用程序。
谁能告诉我如何使这项工作?我是新手,所以尽可能多的说明将不胜感激。
我在虚拟机上有一个 rails 服务器,我需要从主机访问 localhost。我已经尝试了 NAT(通过端口转发 - 来宾端的端口 80 和 3000)和桥接适配器,但似乎没有任何效果。
在这两种情况下,我都能够访问端口 80,但尝试连接到端口 3000 上的 localhost 失败(因此访问 xampp 服务器没有问题)。
如果您知道如何在服务器位于来宾端时从主机访问 localhost,请告诉我。
我在来宾上有 linux (debian),在主机端有 Windows 7 - 我使用 VirtualBox。
我想下载一个 gem 而不安装给定 gem 所需的所有 gem。
专门用于 Rails 3 gem。它有很多依赖项,我需要将它安装在目前没有 ruby/rake/rails 软件的封闭服务器上。
任何线索都会很棒,因为点击 rubygems.org 很乏味。
好吧,让我澄清一下。我想要的是让这个工作:
gem install rails --download-only
这将解决我的问题,因为我可以将生成的 gem 刻录到光盘上,然后将它们移动到我无法访问 Internet 的服务器上。
当我使用适用于 Windows 10 的 WSL 时,我无法 ping 通任何网站。我在 WSL 中运行 Ubuntu 18.04。
--- google.com ping statistics ---
14 packets transmitted, 0 received, 100% packet loss, time 38567ms
Run Code Online (Sandbox Code Playgroud)
这是当我尝试 ping google.com 时的结果,我使用的是带 IPv4 的 Windows 10,禁用了 IPv6。我可以在常规命令提示符下正常 ping google.com,无需使用 wsl
我正在运行 Avast internet security,当我从 ubuntu/WSL 实例内部 ping google 时,这就是我所看到的。
1:
我需要做什么才能在 WSL 中启用 ping
所以我在Ruby on Rails应用程序/var/www/所拥有的nginx与755权限。所述应用程序旨在通过 puma 部署。
像这样:
rvmsudo -u nginx bundle exec puma -e production -d -b unix:///var/www/my_app/tmp/sockets/my_app.socket
Run Code Online (Sandbox Code Playgroud)
套接字的权限是:
srwxrwxrwx. 1 nginx nginx 0 Nov 6 09:43 tmp/sockets/my_app.sock
Run Code Online (Sandbox Code Playgroud)
进程当然归nginx所有:
nginx 7335 0.0 8.8 536744 90388 ? Sl 09:43 0:00 puma 2.9.2 (unix:///var/www/my_app/tmp/sockets/my_app.sock)
Run Code Online (Sandbox Code Playgroud)
我的nginx配置配置如下:
upstream my_app {
server unix:///var/www/my_app/tmp/sockets/my_app.sock;
}
server {
listen 80;
server_name www.example.com example.com;
root /var/www/my_app/public;
location / {
proxy_pass http://my_app;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
Run Code Online (Sandbox Code Playgroud)
所有这些和我的应用程序仍然被拒绝权限。
connect() …Run Code Online (Sandbox Code Playgroud) 我正在使用 Ubuntu (Lucid Lynx) 来学习 Ruby On Rails。我在 VirtualBox 中运行 Ubuntu(主机是 Windows 7 Ultimate),使用桥接网络。
当我运行 Rails 应用程序并使用 localhost:3000 将浏览器指向它时,应用程序会立即响应,并且我的页面会在一两秒钟内呈现。
但是,如果我使用 10.0.0.5:3000(其中 10.0.0.5 是我使用 报告的 IP 地址ifconfig),则来自 Rails 应用程序的响应非常慢 - 服务器响应和呈现页面可能需要 30 秒或更长时间。
这发生在 Firefox 和 Chrome 中。此外,当我从主机点击 Rails 应用程序(在 IE 中测试它)时,我得到相同的 slooooooow 响应。
任何想法可能会发生什么?我已经在两个不同的路由器和两个不同的网络(工作和家庭)上尝试过,结果相同。
给大家加油。
我正在学习如何使用 rvm 使用不同版本的 rails 设置不同版本的 ruby。这是说明http://beginrescueend.com/gemsets/basics/的链接。它说
例如,假设您正在使用 ruby 1.9.2-head 测试 gem 的两个版本。您可以将一个安装到默认的 1.9.2-head,然后为另一个版本创建一个命名的 gemset,并轻松地在它们之间切换。示例:测试宝石
Run Code Online (Sandbox Code Playgroud)$ rvm 1.9.2-head@testing will use a '1.9.2-head@testing' GEM_HOME (be sure to create it首先),而:
我已经创建了
rvm install 1.8.7-head
rvm install 1.9.2
Run Code Online (Sandbox Code Playgroud)
但是我如何创建这个 rvm 1.9.2-head@testing。
关于说明,我有一些不明白的地方……如果可以,请澄清。
干杯
我想为我现有的 Rails 应用程序设置 Elastic Beanstalk。
我成功地制作了示例 foo 应用程序。
这些是我的问题
我需要从我的 git 存储库而不是从我部署的本地路径进行部署。我如何为示例 foo 应用程序执行此操作。
git aws.push 命令似乎部署在新的 ec2 实例上。但是,它没有将更改推送到我的 git 存储库。在执行 git aws.push 之前,我应该单独执行 git push 吗?请注意,当我执行 git status 时,我的分支领先 1 个提交。aws 是否维护一个单独的 git 存储库?我怎样才能让它改用我的 git 存储库?
[mymac:~/Projects/new/foo(master)]$ git aws.push
Counting objects: 4949, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (1115/1115), done.
Writing objects: 100% (4949/4949), 14.11 MiB | 1.90 MiB/s, done.
Total 4949 (delta 3800), reused 4944 (delta 3798)
remote:
To https://AKIAJZT3WFY2WLO6CHQQ:20121127T030627Zf56675b2f4c9c731ca6f51b11d36a438e8bcee25c5171061ce5ac681495318c9@git.elasticbeanstalk.ap-southeast-1.amazonaws.com/v1/repos/617069/commitid/39396162666436346439656465313537613561343561626465643931393366623762386265303138/environment/6170692d656e76
* [new branch] …Run Code Online (Sandbox Code Playgroud) rails ×8
ruby ×4
networking ×2
virtualbox ×2
centos-7 ×1
deployment ×1
linux ×1
nginx ×1
permissions ×1
ping ×1
rvm ×1
ubuntu ×1
windows ×1