求助——apache urlrewrite 问题

totola147 2013-11-18 10:54:49
现在apache作为web服务器放在tomcat 前面 用mod_jk连接

而java项目那边要做伪静态, domain/login.html -> domain/login

所以配置了urlrewrite 配置也成功了

写法1 rewriteRule /([^.*]\.html /$1 [R]
写法2 rewriteRule /([^.*]\.html http://domain/$1

成功的将页面的login.html 重写为 login

问题是,第一种写法会去掉原有请求中的.html 但是如果不加[R]重定向标志,会以documentroot 的路径加上重写后的uri 去查找文件,即时面对静态文件,而例如login是动态的不存在这样的静态文件;所以会访问失败

写法2 制定了重写后的请求的全部内容,不会产生内部静态文件查询;但是依然是一个重定向请求

而重定向请求会将输入的url login.html 跳变成 login 这不是想要的

想要的是 访问 login.html 实际 发给tomcat的请求为 login 浏览器地址不发生重定向,依然保持login.html的url


请问大家谁有办法,单从apache这边就能够实现;
或者说一定要结和tomcat那边进行设置
我觉得从理论上来讲,应该从apache这边就能够实现


谢谢!



(2) init rewrite engine with requested uri /loginPage.html
(3) applying pattern '/([^.]*)\.html' to uri '/loginPage.html'
(2) rewrite '/loginPage.html' -> '/loginPage'
(2) local path result: /loginPage
(2) prefixed with document_root to E:/Apache/htdocs/loginPage
(1) go-ahead with E:/Apache/htdocs/loginPage [OK]

重写后的请求没有通过mod_jk发到tomcat,只有重定向后才能发到tomcat
...全文
93 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
写在最前 欢迎。WordPress 对我来说是一个具有特殊意义的项目。大家都能为 WordPress 添砖加瓦,因此作为其中一员我十分自豪。开发者和贡献者为 WordPress 奉献了难以估量的时间,我们都在致力于让 WordPress 更加优秀。现在,感谢您也参与其中。 — Matt Mullenweg 安装:著名的五分钟安装 1.将 WordPress 压缩包解压至一个空文件夹,并上传它。 2.在浏览器中访问 wp-admin/install.php。它将帮助您把数据库链接信息写入到 wp-config.php 文件中。 1.若上述方法不起作用,也没有关系,请用文本编辑器(如写字板)手动打开 wp-config-sample.php 文件,填入数据库信息。 2.将文件另存为 wp-config.php 并上传。 3.在浏览器中访问 wp-admin/install.php。 3.在配置文件就绪之后,WordPress 会自动尝试建立数据库表。若发生错误,请检查 wp-config.php 文件中填写的信息是否准确,然后再试。若问题依然存在,请访问中文支持论坛寻求帮助。 4.若您不设置密码,请牢记生成的随机密码。若您不输入用户名,用户名将是 admin。 5.完成后,安装向导会带您到登录页面。用刚刚设置的用户名和密码登录。若您使用随机密码,在登录后可以按照页面提示修改密码。 升级 自动升级 若您正在使用 WordPress 2.7 或以上版本,您可使用内置的自动升级工具进行升级: 1.在浏览器中打开 wp-admin/update-core.php,按照提示操作。 2.还有别的步骤么 —— 没了! 手动升级 1.在升级之前,请确保备份旧有数据以及被您修改过的文件,例如 index.php。 2.删除旧版程序文件,记得备份修改过的内容。 3.上传新版程序文件。 4.在浏览器中访问 /wp-admin/upgrade.php。 模板结构变化 如果您曾自己制作或者修改主题,可能您需要做一些修改以使模板在跨版本更新后正常工作。 从其他内容管理系统“搬家” WordPress 支持导入多种系统的数据。请先按照上述步骤安装 WordPress。安装后,您可在后台使用我们提供的导入工具。 最低系统需求 •PHP 5.2.4 或更高版本。 •MySQL 5.0 或更高版本。 系统推荐 •启用 mod_rewrite 这一 Apache 模块。 •在您的站点设置至 http://cn.wordpress.org 的链接。 在线资源 若您遇上文档中未有提及的情况,请首先参考我们为您准备的丰富 WordPress 在线资源: WordPress Codex 文档 Codex 是 WordPress 的百科全书。它包含现有版本 WordPress 的海量信息资源。主要文章均包含中文译文。 WordPress 官方博客 在这里,您将接触到 WordPress 的最新升级信息和相关新闻,建议加入收藏夹。 WordPress Planet WordPress Planet 汇集了全球所有 WordPress 相关的内容。 WordPress 中文支持论坛 如果感到束手无策,请将问题提交至中文支持论坛,它有大量的热心的用户和良好的社区氛围。无论求助还是助人,在这里您应该确保自己的问题和答案均准确细致。 WordPress IRC 频道 同样,WordPress 也有即时的聊天室用于 WordPress 用户交流以及部分技术支持。IRC 的详细使用方法可以访问前面几个关于技术支持的站点。(irc.freenode.net #wordpress) XML-RPC 和 Atom 接口 您可以使用诸如 Windows Live Writer、Ecto、Bloggar、Radio Userland(基于 Radio 的 email-to-blog 功能)、NewzCrawler 等支持 blogging API 的工具更新博客。详情请参阅 Codex 上关于 XML-RPC 支持(英文)的内容。 用电子邮件发布文章 您可以通过电子邮件发表站点更新!请前往后台的“写作”设置页面,输入相关信息和 POP3 帐号信息。然后您需设法让 wp-mail.php 定期运行。您可以使用计划任务(Cron job)来实现,或是让某个站点检测服务定期访问您的 wp-mail.php 的 URL。 更新很简单:使用任何邮箱发送内容到指定地址均会被 WordPress 自动发表,并以邮件主题作为文章标题,所以该"指定地址"也最好保密并专用。发表后程序将自动删除邮件。 用户角色 WordPress 2.0 之后的版本加入了更为灵活的用户身份系统,同时移除了之前的用户等级制度。 到 Codex 阅读关于身份和权限的更多内容。 最后 •对 WordPress 有任何建议、想法、评论或发现了 bug,请加入中文支持论坛。 •WordPress 准备了完善的插件 API 接口方便您进行扩展开发。作为开发人员,如果你有兴趣了解并加以利用,请参阅 Codex 上的插件文档。请尽量不要更改核心代码。 分享精神 WordPress 没有数百万的市场运作资金,也没有名人赞助。不过我们有更棒的支持,那就是您!如果您喜欢 WordPress,请将它介绍给自己的朋友,或者帮助他人安装一个 WordPress,又或者写一篇赞扬我们的文章。 WordPress 是 Michel V. 创建的 b2/cafelog 官方后续版本,WordPress 开发团队将其发展为如今的 WordPress。如果您愿意支持我们的工作,欢迎您对 WordPress 进行捐赠。 版权许可 WordPress 基于 GPL 通用许可协议发布。详见 license.txt(英文)。

24,923

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Apache
社区管理员
  • Apache
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧