1. 程式人生 > >將JSP程序URL靜態化

將JSP程序URL靜態化

JSP URL 靜態化

今天在將網站地圖提交給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>


有文章有列表,還有列表分頁。分頁的功能還未驗證好。等以後再驗證。配置好後重啟tomcat和httpd。

郴州軟件開發培訓 郴州軟件培訓 郴州java培訓 郴州web培訓 湘南IT培訓

永州軟件開發培訓 永州軟件培訓 永州java培訓 永州web培訓 湘南IT培訓

衡陽軟件開發培訓 衡陽軟件培訓 衡陽java培訓 衡陽web培訓 湘南IT培訓

技術分享圖片

將JSP程序URL靜態化