brew的httpd.conf文件配置是这样的:
<Directory /usr/local/apache2/htdocs/brew>
SetHandler r-script
RHandler brew::brew
DefaultType text/html
</Directory>
在brew文件夹下,我有这个文件:
<html>
<body>
<%
library(Cairo)
filename <- paste(tempfile(tmpdir='/usr/local/apache2/htdocs'), '.png', sep='')
CairoPNG(filename)
x<-1:10000
plot(x, type="l", col="red")
dev.off()
%>
<img src="<%=filename%>"/>
</body>
</html>
我将所有权限777设置为安全,至少在我开始工作之前。
当我调用http://localhost/brew/temp.brew时,我看到文件正在htdocs文件夹下生成,但是浏览器没有显示图像,导致图像损坏。我错过了什么?再次感谢这个小组的所有帮助。
当我尝试酿造这样简单的东西时,我会在浏览器上打印出来:
<%
x<-1:1000
print(x)
%>
这可能与apache有关。当我这样做时:
<%=filename%>
我在浏览器上看到了这个:
/usr/local/apache2/htdocs/file199c5ea9644c.png
我的apache主目录是/ usr / local / apache2 / htdocs,但是当提供完整路径时 img src =“&lt;%= filename%&gt;” 它将其视为/usr/local/apache2/htdocs/filename.png,apache不知道这是什么。有什么想法吗?
答案 0 :(得分:1)
您需要安装RApache:http://rapache.net/
RApache是一个带有R的Apache模块,用于解释服务器上的brew代码并呈现正确的html页面。
答案 1 :(得分:1)
本地文件名及其完整名称仅为服务器所知(apache):
对于客户端(您的Web浏览器),您需要URL或相对路径。
特别是,/usr/local/apache2/htdocs
前缀不应再存在。
尝试替换
<img src="<%=filename%>"/>
带
<img src="<%=gsub('/usr/local/apache2/htdocs', '', filename)%>"/>