resin网站根目录采用自动挂载后JSP自动编译报错

环境:

有一台旧的resin server,是正常运行的,现在新增三台resin server,配置文件resin.xml从旧的resin server上面得来,为了方便版本上线,采用 mount 的方式把旧的resin server上面的网站根目录挂载到新的三台server

在三台新server上面执行以下

mount 192.168.xxx.xxx:/webroot  /webroot

问题:

搭建好resin之后在打包访问的时候报错如下:

/webroot/WEB-INF/work/_jsp/_WEB_22dINF/_mmapp/_load_0msg_0box_0top_0advertise__jsp.java (Permission denied)

造成这个错误的原因在于:

由于是mount过来的,如果要往这个目录里面写东西,其实是往 旧的 resin server的这个目录里面写东西,但是当前主机的当前用户肯定是没有权限的

解决办法:

1,把work目录的权限给到777

2,也是最安全的办法,resin配置中有“work-dir”和“temp-dir”参数,可以设置这两个参数,让work和temp 目录指向本地server的可用目录即可

如果不设置work-dir的话,resin默认是在WEB-INF下建立一个work目录. 
如果不设置temp-dir的话,resin默认是在WEB-INF下建立一个tmp目录 
这些都是resin的默认行为,作为这个问题的解决办法就是在配置文件中添加work-dir和temp-dir参数设置就行了

<host id="domain.name">  
     <host-alias>domain.name</host-alias>  
     <root-directory>domain.name/htdocs</root-directory>  
	<web-app id="/" root-directory="ROOT"/>  
		<work-dir>domain.name/work</work-dir>  
		<temp-dir>domain.name/temp</temp-dir>  
	</web-app>
</host>
时间: 2024-08-07 09:28:57

resin网站根目录采用自动挂载后JSP自动编译报错的相关文章

安装asp.net mvc4后mvc3项目编译报错

安装asp.net mvc4之后,之前的mvc3项目编译时报这个错“The type System.Web.Mvc.ModelClientValidationRule exists in both c:\Program Files\Microsoft ASP.NET\ASP.NET MVC 3\Assemblies\System.Web.Mvc.dll and c:\Program Files\Microso...” 重新安装mvc3也许可以解决这个问题,不过还会覆盖mvc4的配置,可以通过修改

刚新建好的动态网站项目,创建jsp页面就报错

拿到刚刚可以运行的Eclipse,就马上想敲码了,但一创建项目之后再创建jsp页面就报错= =! 报错的内容大概为缺乏对应的jar包. 我们常用Tomcat为中间体,而他本身是带有开发jsp网站的对应的jar包,检查在创建的时候是否有在Eclipse中配置Tomcat和新建项目的时候,有没把配置好的Tomcat设置选择,而我是没有选择在Eclipse中配置好的Tomcat. 首先第一步,选中 项目 –> Properties 在Java Build Path 下,点击 Add Library..

解决Ext4.2.3中propertyGrid修改后点击排序报错

Ext4.2.3中PropertyGrid修改后点击排序报错,具体错误信息如下: 一开始还怀疑是自己哪里配置错了,各种尝试结果还是一样.查遍百度和谷歌,无果,只有一篇帖子说是4.2.4修正了.还是自己动手吧,自己动手丰衣足食. 点开报错地方(如下图所示),原来是me.field.column没有定义. 然后继续找,找啊找啊找到Ext.grid.property.Grid的getCellEditor方法.此方法有参数column,可在方法体内,column就没有被用到过,于是就感觉问题出在这里.

MyEclipse中jsp的注释报错解决

jsp页面中注释报错: 出错现场:在eclipse中没有报错,在MyEclipse中报错. <!-- To use express install, set to playerProductInstall.swf, otherwise the empty string. --> Myeclipse的js中不会识别这样的标识 需要改成: //  To use express install, set to playerProductInstall.swf, otherwise the empty

升级后,使用dynamic报错

程序升级为.NET 4.0后,在程序中使用dynamic时出现下列错误 错误 5 预定义的类型“Microsoft.CSharp.RuntimeBinder.Binder”未定义或未导入错误 4 找不到编译动态表达式所需的一个或多个类型. 引用Microsoft.Csharp.dll后可解决此问题. 升级后,使用dynamic报错

安装wamp后,localhost访问报错“You don&#39;t have permission to access / on this server.”

今天装了一个wamp,在本地测试了一下,发现使用http://localhost/报错403,提示内容如下:"You don't have permission to access / on this server.".用127.0.0.1访问正常,phpMyAdmin也是同样的问题. 在网上搜索了一下有很多都是出现这个问题,但是不是不详细就是没找到解决办法.在此做一下记录,我是安装一路下一步所以安装目录都是默认的. 首先修改Apache,在wampserver下左键,Apache下有

[Sencha ExtJS] 关于build production后,浏览器运行报错&#39;Uncaught TypeError: c is not a function&#39;

原文:http://blog.csdn.net/lovelyelfpop/article/details/51328783 估计很多人用 ExtJS6 + Sencha Cmd 6 的时候,遇到过一种情况:开发的时候明明正常的,build之后运行就报了下面的错误 Uncaught TypeError: c is not a function 心里一万个草泥马奔腾:What the hell is this?(这TM什么JB玩意?) 其实根本原因是你忘记了requires某个类导致的. 比如你这样

FastDFS整合nginx后,nginx一直报错

FastDFS整合nginx后,nginx一直报错: 报错内容: [2018-06-11 09:41:21] ERROR - file: ../common/fdfs_http_shared.c, line: 148, param "http.mime_types_filename" not exist or is empty 处理过程: #include http.conf是写在/etc/fdfs/mod_fastdfs.conf里,然而在 /etc/fdfs目录中没有 http.c

Python中安装bs4后,pycharm依然报错ModuleNotFoundError: No module named &#39;bs4&#39;

学习网络抓取时,第一步出现问题. 执行示例代码 from urllib.request import urlopen from bs4 import BeautifulSoup html = urlopen("http://www.pythonscraping.com/exercises/exercise1.html") bsObj = BeautifulSoup(html, "html.parser") print(bsObj.h1) 执行结果 Traceback