如何将war文件部署到cPanel并删除项目名称?

我需要在cPanel上运行我的Java应用程序。 我已经成功安装了Tomcat,

我可以通过将war文件复制到我的www文件夹来运行我的应用程序,但问题是它在地址中显示了项目名称( war文件名),我需要知道如何删除它,以便用户可以访问www.example.com而不是www.example.com/MyProject/index.jsp

根据一个cpanel托管服务命令,出于安全原因,通常会关闭cpanel的访问权限,你必须具体要求它。 如果您具有此访问权限,则可以登录并运行unzip命令(使用FileZilla或类似工具上载war文件后)。

根据cpanel,如果你没有命令提示符访问权限,你可以将war上传到你的public_html目录,但在这之前你需要更改apache配置并为此添加一个“JkMount”(参见带有“appname”的那个)下面)。

  JkMount /*.jsp ajp13 JkMount /servlet/* ajp13 JkMount /servlets/* ajp13 JkMount /*.do ajp13 JkMount /appname/* ajp13  

当然,除了你的“app name”而不是appname。 此更改将指示apache将对顶级URL(即mydomain.com/appname)的调用重定向到您的Tomcat实例(即mydomain.com:8080/appname)。 上传战争并更改配置后,您必须重新启动apache。

但是我们说我们没有ssh访问权限,所以我们如何修改该文件。 根据这个论坛,我们可以编辑/home/username/public_html/.htaccess或只是/public_html/.htaccess并添加以下行:

 SetHandler jakarta-servlet SetEnv JK_WORKER_NAME ajp13 

现在,apache将重定向tomcat for mydomain.com/appname而不是mydomain.com:8080/appname。 我们如何才能从mydomain.com开始工作? 我根本就不知道答案。 据我所知,使用将war文件更改为ROOT.war的常用技巧在cpanel中不起作用。

您将不得不修复/usr/local/jakarta/tomcat/conf/server.xml中的条目。经过大量调整后的一段时间我使用了它并且它有效:

  www.domain.com     

war文件的名称与容器如何呈现项目无关 – 它只是配置问题,默认情况下容器将上下文路径显示为文件名。

使用ROOT.war只是一个愚蠢的技巧,阅读Tomcat中的Context配置(我假设你使用的是Tomcat)

http://tomcat.apache.org/tomcat-7.0-doc/config/context.html

有几种方法可以在tomcat中设置应用程序根上下文。 所有这些都在服务器的文档中描述。 这是另一个

修改tomcat_home\conf\server.xml 。 在 tag put下

  

yourappname.war放在webapps文件夹中,反映标签的appBase属性。

保存,重启服务器。

如果您无法编辑server.xml ,则可以删除ROOT.war并将war文件重命名为ROOT.war,或者只将您的.war文件解压缩到目录名ROOT。
下次您打开网站前 – http://www.example.com时,将向您显示index.jsp。
我在Openshift的网站上做了同样的事情,提供免费的PAAS服务

他们只需要在shell中解压缩.war存档。 看到:

如何部署.WAR应用程序 – Ubiquity Web Hosting Wiki

我们有超过100个使用过这些说明的用户,效果很好。 如果您使用EasyApache部署了Tomcat并将其设置为cPanel设计的,那应该是关于它的。 这源于:

http://twiki.cpanel.net/twiki/pub/Al…s08/Tomcat.pdf

http://forums.cpanel.net/f42/how-auto-deploy-war-cpanel-server-55096.html

Interesting Posts