继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

将JSP程序URL静态化

不要慕码人我要切诺基
关注TA
已关注
手记 281
粉丝 37
获赞 120

今天在将网站地图提交给google时,不能通过,原因是url是动态的,还参数,如这样/d?B=2&A=1


没办法,只能改成静态的。改成静态的几类方式,一种是直接在程序里生成html,使用模板;另一种是使用httpd的RewriteRule功能,这个叫伪静态。不过对搜索引擎来说真静态和伪静态是一样的。


配置如下:


1、修改<VirtualHost *:443> 配置


添加如下内容

<VirtualHost *:80>    ServerName yourdomain    <Location />      ProxyPass ajp://127.0.0.1:8010/      Order allow,deny      allow from all    </Location>     RewriteEngine on    RewriteRule /detail-([0-9]+)-([0-9]+)\.html /d?B=$1&A=$2 [PT]    ErrorLog logs/tech-error_log</VirtualHost>


RewriteEngine on 是开启重定向引擎

RewriteRule /detail-([0-9]+)-([0-9]+)\.html /d?B=$1&A=$2 [PT] 是配置规则,$1 $2是点位符,([0-9]+)是正则表达式,意思是访问 /detail-2-4.html 将跳转到/d?B=2&A=4


2、也是很关键一步,记得修改jsp中的href 值,之前是/d?B=2&A=4,现在不行了,得改成和上面的配置规则一样的/detail-${变量}-${变量}.html。


如果有多样URL要配置,多添加几条,如下

<VirtualHost *:80>    ServerName yourdomain    <Location />      ProxyPass ajp://127.0.0.1:8011/      Order allow,deny      allow from all    </Location>     RewriteEngine on                     RewriteRule /article-([0-9]+)\.html /d?a=$1 [PT]    RewriteRule /list-([0-9]+)\.html /list?b=$1 [PT]    RewriteRule /list-([0-9]+)-([0-9]+)\.html  /list?b=$1&p=$2 [PT]   </VirtualHost>



打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP