在 Windows 中创建 Cookie 文件 RabbitMQ 失败
Posted
技术标签:
【中文标题】在 Windows 中创建 Cookie 文件 RabbitMQ 失败【英文标题】:Failed to Create Cookie file RabbitMQ in Windows 【发布时间】:2013-08-31 23:56:05 【问题描述】:我正在尝试运行以下命令
rabbitmq-plugins.bat enable rabbitmq_management
它给了我这样的错误:
11:36:55.464 [错误] 无法创建 cookie 文件 'h:/.erlang.cookie': enoent
我使用的是 Windows 7,Erlang 版本 R16B01 和 RabbitMQ-Server 版本 3.1.5
我正在使用我的工作电脑,我们的公司政策将 HOMEDRIVE 设置为 h: 并将 HOMEPATH 设置为 / 而且我认为他们不会让我改变这一点。
我可以在 C:\Windows 下看到 .erlang.cookie 文件。
有人可以告诉我解决方法吗?
提前致谢!
【问题讨论】:
您可以作弊并将 cookie 文件复制到您的主目录。只是内容是相关的;) 谢谢!会尝试的。目前我无法访问 H:drive,不确定为什么某些公司政策给我们无法访问的家庭驱动器:) 【参考方案1】:有同样的 H: 问题。在执行 cli 之前,将主驱动器设置为 dos shell 中的某个目录。
set HOMEDRIVE=C:/conf/rabbitmq :: Or your favorite dir
rabbitmq-plugins.bat enable rabbitmq_management
使用 C 盘中的文件夹。 rabbitmq系统会将cookie文件写入那里。
【讨论】:
【参考方案2】:在您的 PC 中找到“.erlang.cookie”的位置并运行以下命令:
set HOMEDRIVE=[location of ".erlang.cookie"]
rabbitmq-plugins.bat enable rabbitmq_management
【讨论】:
【参考方案3】:在某些情况下,您的 HOMEDRIVE 和 HOMEPATH 被组策略(活动目录用户)覆盖,而您每次想要启动 RabbitMQ 服务时都需要设置 HOMEDRIVE 变量。在这种情况下,您可以做的是:
rabbitmq-service remove
服务
编辑 rabbitmq-service.bat 文件:
"!ERLANG_HOME!\bin\erl.exe" ^
-pa "!RABBITMQ_EBIN_ROOT!" ^
-boot !CLEAN_BOOT_FILE! ^
-noinput -hidden ^
-s rabbit_prelaunch ^
-setcookie "C:\Users\userName\" ^ <<< this is a place of your cookie
!RABBITMQ_NAME_TYPE! rabbitmqprelaunch!RANDOM!!TIME:~9!@localhost ^
-conf_advanced "!RABBITMQ_ADVANCED_CONFIG_FILE!" ^
..."
保存脚本
set HOMEDRIVE=C:\Users\userName
安装服务前更改homedrive
rabbitmq-service install
重新安装服务
现在每次重新启动时,您的服务都会自动启动,并且所有路径都正常!
【讨论】:
【参考方案4】:虽然这看起来很明显,但您确实需要“以管理员身份”运行 cmd - 在我纠正之前,我遇到了上述错误。 :-)
【讨论】:
【参考方案5】:我按照以下步骤解决了这个问题:
打开文件:“Program Files/RabbitMQ Server/rabbitmq_server-/sbin/rabbitmq-env”
在文件末尾,追加以下行:
REM Environment cleanup
set BOOT_MODULE=
set CONFIG_FILE=
set FEATURE_FLAGS_FILE=
set ENABLED_PLUGINS_FILE=
set LOG_BASE=
set MNESIA_BASE=
set PLUGINS_DIR=
set SCRIPT_DIR=
set SCRIPT_NAME=
set TDP0=
set HOMEDRIVE=C: <<< the new path of the .erlang.cookie
打开 RabbitMQ 控制台
写:
4.1。 rabbitmq-service stop
4.2. rabbitmq-service remove
4.3. rabbitmq-service install
4.4. rabbitmq-service start
【讨论】:
以上是关于在 Windows 中创建 Cookie 文件 RabbitMQ 失败的主要内容,如果未能解决你的问题,请参考以下文章
在 _Layout 文件中按下按钮时,如何在 Razor 页面中创建 cookie?