gpt4 book ai didi

r - 将 RMarkdown 发布到 RPubs 时,nginx 和服务器错误的空回复

转载 作者:行者123 更新时间:2023-12-03 21:27:16 25 4
gpt4 key购买 nike

尝试在 RStudio 中将 .Rpres 和 .Rmd 文件发布到 RPub 时,我收到了一些不同的错误消息。除了下面两个之外,另一个错误只是一个空白的错误响应。我尝试过在连接到 VPN 时和断开连接时都进行发布,但在我返回的错误类型中找不到模式。

过去(大约一个月前),我已经能够成功地将 .Rmd 文件发布到 RPubs。当我重新发布 RPub 上存在的那个 .Rmd 时,它被覆盖了,现在是空白的。

不确定这是 openssl 问题还是其他问题。我不认为错误消息曾明确提到 SSL,但以防万一我尝试从自制软件重新安装 openssl,sudo 接受 xcodebuild 许可证和 CRAN;一切看起来都很好(package ‘openssl’ 成功解压并检查了 MD5 总和)。

我还在我的 .RProfile 中添加了 options(rpubs.upload.method = "internal")

我在 OSX 版本 10.13 上运行 R 版本 3.3.3 和 RStudio 版本 1.1.383。


Error in function (type, msg, asError = TRUE) : Empty reply from server
Calls: <Anonymous> ... tryCatch -> tryCatchList -> tryCatchOne -> <Anonymous>
Execution halted

<!DOCTYPE html>
<html>
<head>
<title>Error</title>
<style>
body {
width: 35em;
margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif;
}
</style>
</head>
<body>
<h1>An error occurred.</h1>
<p>Sorry, the page you are looking for is currently unavailable.<br/>
Please try again later.</p>
<p>If you are the system administrator of this resource then you should check
the <a href="http://nginx.org/r/error_log">error log</a> for details.</p>
<p><em>Faithfully yours, nginx.</em></p>
</body>
</html>

编辑:options(RCurlOptions = list(verbose = TRUE, capath = system.file("CurlSSL", "cacert.pem", package = "RCurl") 时的完整响应, ssl.verifypeer = TRUE)) 添加到 Rprofile`

*   Trying 50.19.223.253...
* TCP_NODELAY set
* Connected to api.rpubs.com (50.19.223.253) port 443 (#0)
* ALPN, offering http/1.1
* Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH
* successfully set certificate verify locations:
* CAfile: /Users/amanda/Library/R/3.3/library/rsconnect/cert/cacert.pem
CApath: /Users/amanda/Library/R/3.3/library/RCurl/CurlSSL/cacert.pem
* SSL connection using TLSv1.2 / ECDHE-RSA-AES128-GCM-SHA256
* ALPN, server did not agree to a protocol
* Server certificate:
* subject: CN=rpubs.com
* start date: Oct 30 00:00:00 2017 GMT
* expire date: Nov 30 12:00:00 2018 GMT
* subjectAltName: host "api.rpubs.com" matched cert's "api.rpubs.com"
* issuer: C=US; O=Amazon; OU=Server CA 1B; CN=Amazon
* SSL certificate verify ok.
> POST /api/v1/document HTTP/1.1
Host: api.rpubs.com
User-Agent: rsconnect/0.8.5
Accept: */*
Connection: close
Content-Type: application/x-compressed
Content-Length: 10630431
Expect: 100-continue

< HTTP/1.1 100 Continue
* We are completely uploaded and fine
* Empty reply from server
* Connection #0 to host api.rpubs.com left intact
Error in function (type, msg, asError = TRUE) : Empty reply from server
Calls: <Anonymous> ... tryCatch -> tryCatchList -> tryCatchOne -> <Anonymous>
Execution halted

最佳答案

建议的解决方案:

我建议您将以下行添加到您的 .RProfile

options(rpubs.upload.method = "internal")
options(RCurlOptions = list(verbose = FALSE, capath = system.file("CurlSSL", "cacert.pem", package = "RCurl"), ssl.verifypeer = TRUE))

步骤:

(1) 创建一个文本文件并在其中输入以下行:

选项(rpubs.upload.method = “内部”)

(2) 将文件保存在与您的 knitr 项目相同的目录中。文件名应为 .Rprofile(或在您的主目录中)

注意名称以点(.)开头

(3) 现在切换到 knitr 项目目录并编译你的 Rmd 文件。

(4) 打开浏览器,使用用户名和密码登录Rpubs。 (这是可选的,但有时它被认为是必要的步骤)。

(5) 返回 R 工作室,按“发布”。


如果上述方法不起作用,请删除并重新安装 RCurl

remove.packages("RCurl")
install.packages("RCurl")

然后我会重启 RStudio 并尝试通过 RStudio 发布。如果仍然失败,我的建议是删除 RStudio 并重新安装。

为什么?好吧,第二行解决了我在 RPubs 发布方面的问题:-)

要进行调试,您可以设置 verbose = TRUE

更多信息:

您在 Mac OS X 上使用什么包管理器?

  • Brew 还是 Macports?

我问这个问题可能与您的软件包安装的潜在问题有关。即,如果您使用的是 brew,那么您可能需要做一个 brew doctor 来检查您的配置。

代理配置

如果您在代理后面运行,则需要配置访问权限。

引用:https://support.rstudio.com/hc/en-us/articles/205002917-SSL-certificate-problem-when-publishing-to-RPubs

rCurl 调试资源:

如果您仍然遇到问题,我建议您查看:

RPubs 帮助页面:

关于r - 将 RMarkdown 发布到 RPubs 时,nginx 和服务器错误的空回复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47058785/

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