gpt4 book ai didi

ruby-on-rails - Neo4j,Capistrano 部署,身份验证错误

转载 作者:行者123 更新时间:2023-12-02 03:15:18 27 4
gpt4 key购买 nike

我想使用 Neo4jrb 将 Rails 应用程序部署到 Capistrano 的生产环境中。部署期间出现以下错误:

DEBUG [5a528d81] Finished in 0.057 seconds with exit status 0 (successful).
INFO [acd66fd5] Running /usr/local/bin/chruby-exec 2.3.0 -- bundle exec rake assets:precompile as deploy@46.101.153.252
DEBUG [acd66fd5] Command: cd /home/deploy/projects/larp-tool/releases/20160522103925 && ( export RAILS_ENV="production" ; /usr/local/bin/chruby-exec 2.3.0 -- bundle exec rake assets:precompile )
DEBUG [acd66fd5] rake aborted!
DEBUG [acd66fd5] Neo4j::Server::Resource::ServerException: Expected response code 200 Error for request http://localhost:7474/db/data/, 401
DEBUG [acd66fd5] /home/deploy/projects/larp-tool/shared/bundle/ruby/2.3.0/gems/neo4j-core-6.1.4/lib/neo4j-server/resource.rb:37:in `handle_response_error!'
/home/deploy/projects/larp-tool/shared/bundle/ruby/2.3.0/gems/neo4j-core-6.1.4/lib/neo4j-server/resource.rb:32:in `expect_response_code!'
/home/deploy/projects/larp-tool/shared/bundle/ruby/2.3.0/gems/neo4j-core-6.1.4/lib/neo4j-server/cypher_session.rb:86:in `initialize_resource'
...

我在 neo4.yml 中设置了以下凭据:

production:
type: server_db
url: http://username:password@localhost:7474

也尝试过:

production:
type: server_db
url: http://localhost:7474
username: username
password: password

我使用 Neo4j REST Api 设置了这个凭据,当我在服务器上运行 curl 时,一切似乎都很好:

curl http://username:password@localhost:7474/db/data/

那么,部署时为什么会出错呢?

最佳答案

你的两个 neo4j.yml 文件在我看来都不错。错误中的 401 表示身份验证无效。有几种可能性:

  • 您是否通过登录 Web 界面在 Neo4j 生产环境中设置了密码? Neo4j 不允许您通过 HTTP 端点(gem 使用)连接默认用户名/密码,因此您需要更改它。如果您使用 rake 任务在本地设置数据库,您可能没有遇到此问题,因为它们在没有身份验证的情况下设置服务器以简化此过程。
  • 您可以尝试将 NEO4J_URL 环境变量设置为 http://username:password@localhost:7474 看看会得到什么
  • 作为健全性检查:您的 Neo4j 数据库是否与您的应用程序在同一台服务器上运行(否则 localhost 没有意义)?

关于ruby-on-rails - Neo4j,Capistrano 部署,身份验证错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37373523/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com