Tomcat 对EC2上文件系统的HTTP访问
也许我把这一切都搞错了,我是新的服务器编程,在这种情况下,请让我知道 我在Amazon Elastic Beanstalk上使用Tomcat 6运行了一个grails应用程序2.1.1,我还设置了restful api将JSON发送到客户端,其中包括图像文件的URL。我已将ssh插入到服务器中,以将映像放置在适当的目录中。请注意,这些是用户要添加和删除的动态映像,而不是静态系统映像 但是,当客户端尝试连接到图像URL时,服务器会以404错误响应 我认为这不是安全组问题,因为我得到了404错误,而不是连接被拒绝,等等,这是正确的吗 我是不是因为 不知怎的,URL不正确, 我的亚马逊设置有点欠缺, 我的Tomcat设置不知怎么缺少, 或者我的应用程序以某种方式拒绝连接? 也就是说,为什么我能够访问http://myenvironment.elasticbeanstalk.com//login 但不是http://myenvironment.elasticbeanstalk.com//media/images/myImage.jpg 或http://myenvironment.elasticbeanstalk.com/media/images/myImage.jpg 我知道这不太详细,但我觉得我真正的问题是对这个问题的高层次理解Tomcat 对EC2上文件系统的HTTP访问,tomcat,grails,amazon-web-services,Tomcat,Grails,Amazon Web Services,也许我把这一切都搞错了,我是新的服务器编程,在这种情况下,请让我知道 我在Amazon Elastic Beanstalk上使用Tomcat 6运行了一个grails应用程序2.1.1,我还设置了restful api将JSON发送到客户端,其中包括图像文件的URL。我已将ssh插入到服务器中,以将映像放置在适当的目录中。请注意,这些是用户要添加和删除的动态映像,而不是静态系统映像 但是,当客户端尝试连接到图像URL时,服务器会以404错误响应 我认为这不是安全组问题,因为我得到了404错误,而
基本上,是什么控制访问文件系统的权限?您使用的是grails资源插件吗?默认情况下,它是启用的,并将/images/*下的所有内容映射到url路径/static 因此,默认情况下,如果要获取图像,应将目标锁定:
http://localhost:8080/project-name/static/images/grails_logo.png
这在ResourcesGrailsPlugin.groovy中配置:
谢谢,那很有帮助。我现在看到这是一个grails配置问题。我正在使用“resources 1.1.6”插件,但没有“ResourcesGrailsPlugin.groovy”文件。我想我可以创建一个,但它似乎是为静态图像设计的。对于用户生成的动态图像,这仍然是一个很好的答案吗?我已经编辑了我的问题,添加了那个细节。
static DEFAULT_URI_PREFIX = 'static'
static DEFAULT_ADHOC_PATTERNS = ["/images/*", "*.css", "*.js"].asImmutable()