`
lan13217
  • 浏览: 496008 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

opencms 去掉两个/opemcms路径的方法

    博客分类:
  • cms
阅读更多

RIA知识库 
flex 
RIA 

http://opencms-wiki.org/Removing_the_/opencms/opencms_prefix_without_using_Apache
---------------------------------------------------------------------------------------------------------------------------------------------

第一步:去掉第一个/opencms

(方法一)
把下载来的opencms.war下的文件考到tomcat/webapps/ROOT下,运行安装。。这样第一个/opencms 自然就去掉了,不用什么力气,也不用配置什么别的,如果您不想把opencms放了ROOT目录,也可以像其它人一样,配置虚拟目录来设置,在baidu搜索一下就有很多方法去掉第一下opencms

(方法二)
在tomcat\conf\server.xml 中找到以下配置片断:

<Host name="localhost" appBase="webapps"
           unpackWARs="true" autoDeploy="true"
           xmlValidation="false" xmlNamespaceAware="false">
      ......
</Host>


修改以上配置,然后在<Host></Host>之间加入一行配置,最后形式如下:

<Host name="localhost" appBase="webapps"
           unpackWARs="true" autoDeploy="false"
           xmlValidation="false" xmlNamespaceAware="false" deployOnStartup="false">
  <Context  path=""  docBase="C:\apache-tomcat-5.5.25\webapps\opencms" /> 
      ......
</Host>



在tomcat\webapps\opencms\WEB-INF\web.xml 中找到以下配置片断:

  <context-param>
        <param-name>DefaultWebApplication</param-name>
        <param-value>ROOT</param-value>
  </context-param> 



把以上配置片断修改为以下形式:

  <context-param>
        <param-name>DefaultWebApplication</param-name>
        <param-value>opencms</param-value>
  </context-param> 


重新启动 Tomcat 服务,利用 http://localhost:8080/opencms 访问默认站点,如果出现如图
------------------------------------------------------------------------- 

去掉第二个/opencms

第二步:去掉第二个/opencms  也是我们要处理的关键部分。

现在的任务是要去掉第二个,opencms文档中,是安装apache,并使用apache的urlrewrite模块来对项目的URL进行重定向, 现在我们要使用 urlrewrite来完成这任务,如果不知道urlrewrite的朋友,可以到http://tuckey.org/urlrewrite/下载。

注意一定要下载:urlrewrite-3.2.0.jar 版本,因为我之前使用的其它版本,没有成功。后台页面乱码。


下载完以后,把urlrewrite.zip里面的/WEB-INF/lib/urlrewrite.jar放到我们项目的/WEB-INF/lib/urlrewrite.jar里。

然后,在/WEB-INF/目录下新建一个urlrewrite.xml文件,里面的内容为:

附件一:urlrewrite.xml

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 2.6//EN" "http://tuckey.org/res/dtds/urlrewrite2.6.dtd">
<urlrewrite>  
    <rule>  
        <from>^/tc-mgr/(.*)$</from>  
        <to>/tc-mgr/$1</to>  
    </rule> 
  <rule>
   <condition type="request-uri" operator="notequal">^/export/.*$</condition>
   <condition type="request-uri" operator="notequal">^/resources/.*$</condition>
   <condition type="request-uri" operator="notequal">^/opencms-errorhandler/.*$</condition>
   <condition type="request-uri" operator="notequal">^/webdav/.*$</condition>
   <condition type="request-uri" operator="notequal">^/opencms/.*$</condition>
   <condition type="request-uri" operator="notequal">^/setup/.*$</condition>
   <from>^/(.*)$</from>
   <to>/opencms/$1</to>
</rule>
</urlrewrite>

 

创建好以后,打开/WEB-INF/web.xml文件,找到以下代码:

    <listener> 
        <listener-class>org.opencms.main.OpenCmsListener</listener-class> 
    </listener>

 

然后在其后面加上:

    <filter>
	 <filter-name>UrlRewriteFilter</filter-name>
	 <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>

	 <init-param>
	  <param-name>confReloadCheckInterval</param-name>
	  <param-value>-1</param-value>
	 </init-param>

	 <init-param>
	  <param-name>logLevel</param-name>
	  <param-value>ERROR</param-value>
	 </init-param>
	  
	 <init-param>
	  <param-name>statusEnabled</param-name>
	  <param-value>false</param-value>
	 </init-param>
	 
	 <init-param>
	  <param-name>statusPath</param-name>
	  <param-value>/status</param-value>
	 </init-param>
	</filter>

	<filter-mapping>
	 <filter-name>UrlRewriteFilter</filter-name>
	 <url-pattern>/*</url-pattern>
	</filter-mapping>
 







至此,已完成了第二个opencms的去除,但如果此时运行项目的话,项目中的URL地址还是会有/opencms/,所以我们要把URL中的这个路径去掉。





打开/WEB-INF/config/opencms-importexport.xml

找到代码:<vfs-prefix>${CONTEXT_NAME}${SERVLET_NAME}</vfs-prefix>

将其修改为: <vfs-prefix>${CONTEXT_NAME}</vfs-prefix>

现在,第二个opencms的去除已成功。


http://nhy520.iteye.com/blog/713831  该链接方法在添加用户选择用户组 时候 会有页面路径经错误问题

 

  • xml.rar (3.1 KB)
  • 下载次数: 17
分享到:
评论

相关推荐

    opencms应用中去掉路径中的两个/opencms

    干货,opencms应用中去掉路径中两个/opencms。利用urlrewritefilter,网上方法走不通,自己琢磨得出,完美去除。官方文档中方法会带来一些问题。 学习过程中使用了很多积分,各位不缺的话,支援下。实在没有积分又很...

    opencms路径去掉两个opencms的方法总结

    本文将详细探讨如何通过不同的方法去除URL中的冗余“opencms”,以实现更加简洁和友好的路径。 1. **配置Web服务器** - 如果你使用的是Apache HTTP Server,可以编辑`httpd.conf`文件,通过重写规则来修改URL。...

    opencms配置去掉2个opencms总结

    标题中的“opencms配置去掉2个opencms”指的是在OpenCms系统中,可能有用户想要移除或禁用两个特定的OpenCms组件或功能,可能是出于优化性能、减少冗余或者简化系统的考虑。OpenCms是一款开源的内容管理系统,它允许...

    tomcat服务器以url重写的方式除去两个opencms

    "Tomcat服务器以URL重写的方式除去两个opencms"的主题聚焦于如何在OpenCms平台上通过URL重写技术来改善网站的URL结构,以提高其可读性并促进搜索引擎的抓取。OpenCms是一款开源的内容管理系统,它允许开发者创建、...

    如何安装OPENCMS

    2. **Tomcat服务器**:OPENCMS需要一个Servlet容器来运行,Tomcat是一个常见的选择。下载并安装Tomcat最新稳定版,例如Tomcat 9,确保其配置正确且可以正常启动。 3. **MySQL数据库**:OPENCMS依赖于关系型数据库...

    OpenCms创建网站过程图解——献给OpenCms的初学者们

    对于初次接触OpenCms的用户来说,可能会遇到一些困惑,比如如何开始使用、如何创建自己的第一个网站等。本文将详细介绍使用OpenCms创建网站的步骤,并提供相应的图解指南,帮助初学者快速上手。 #### 二、准备工作 ...

    marmots-opencms-maven-plugin:一个帮助 Opencms 模块开发的 Maven 插件

    一个帮助 Opencms 模块开发的 Maven 插件。 在查看它的实际效果 发布目标 通过 JLAN 服务器将修改后的资源发布到 opencms 配置属性 &lt; url&gt;smb://Admin:admin@localhost:1446/OPENCMS/&lt;/ url&gt; &lt; module&gt;org.marmots...

    opencms for myeclipse插件及其使用方法

    - **导入现有项目**:如果你已经有了一个OpenCms项目,可以通过“File” -&gt; “Import” -&gt; “OpenCms Project”将项目导入到MyEclipse中。 - **配置OpenCms连接**:在插件设置中,需要输入OpenCms服务器的URL、...

    OpenCms6.2千寻汉化包1.1版

    作者希望OpenCms6.2千寻汉化包1.1版能给众多的OpenCms研究者在OpenCms的研究道路上提供一些帮助…… 作者会陆续出一些OpenCms相关的东东与大家共享……:) OpenCms是一个专业级开源网站内容管理系统,是一个J2EE的...

    opencms创建站点

    本文将详细介绍如何使用 Opencms 创建一个站点,从下载和安装 Opencms 到创建站点和模板的每一个步骤都会被详细介绍。 1. 下载和安装 Opencms 首先,需要下载 Opencms 的安装包,访问 Opencms 官方网站 ...

    opencms

    本书《OpenCms7 Development》由Dan Liliedahl编写,由Packt Publishing出版,深入探讨了通过Java API扩展和定制OpenCms的方法。 一、OpenCms概览 OpenCms的核心优势在于其强大的灵活性和可扩展性。系统基于Java...

    OpenCMS

    这本书旨在帮助读者掌握使用OpenCMS构建网站的方法和技术。书中不仅涵盖了OpenCMS的基础知识和操作指南,还深入探讨了如何利用该平台的高级功能来创建复杂且功能齐全的网站。 #### 四、书籍内容概览 - **基础知识*...

    opencms9 java api

    OpenCMS 是一个开源的内容管理系统(CMS),主要由Java语言开发,专为构建企业级网站提供了一个强大而灵活的平台。其Java API 提供了丰富的功能,使得开发者可以通过编程方式与OpenCMS系统进行交互,实现内容的创建...

    opencms整理

    3. **添加端口映射**:为了确保OpenCMS能够通过不同的端口访问,还需要在`&lt;Service&gt;`标签内添加两个`&lt;Connector&gt;`标签,分别用于监听8081和8082端口。示例代码如下: ```xml ...

    OpenCms 7 Development(最好的OpenCms二次开发资料)

    《OpenCms 7 Development》是一本专注于OpenCms二次开发的专业资料,它为开发者提供了深入理解OpenCms系统架构和进行高效定制化的关键指导。OpenCms是一款开源的内容管理系统,广泛应用于企业网站、新闻门户和其他...

Global site tag (gtag.js) - Google Analytics