一、使用apj代理的方式:css
配置http.conf文件html
- <VirtualHost *:80>
- DocumentRoot "/home/abc/ROOT"
- ServerName test.abc.com
- DirectoryIndex index.jsp
- <Directory "/home/abc/ROOT" >
- Options Indexes FollowSymLinks
- AllowOverride None
- Order allow,deny
- Allow from all
- </Directory>
- #ProxyPass /css/ !
- #ProxyPass /p_w_picpaths/ !
- #ProxyPass /js/ !
- #ProxyPass /style/ !
- ProxyPass / ajp://localhost:50092/
- ProxyPa***everse / ajp://localhost:50092/
- RewriteEngine On
- RewriteRule ^/bbs/content-([0-9]+)\.html$ ajp://www.abc.com:50092/bbs/content.jsp?id=$1 [P,L]
- </VirtualHost>
參數解釋: apache
- 'last|L'(結尾規則)
- 當即中止重寫操做,並再也不應用其餘重寫規則。它對應於Perl中的last命令或C語言中
- 的break命令。這個標記用於阻止當前已被重寫的URL被後繼規則再次重寫。例如,使用它
- 能夠重寫根路徑的URL('/')爲實際存在的URL(好比:'/e/www/')。
- 'proxy|P'(強制爲代理)
- 此標記使替換成分被內部地強制做爲代理請求發送,並當即中斷重寫處理,而後把處理移交
- 給mod_proxy模塊。你必須確保此替換串是一個可以被mod_proxy處理的有效URI(好比以
- http://hostname開頭),不然將獲得一個代理模塊返回的錯誤。使用這個標記,能夠把某些
- 遠程成分映射到本地服務器域名空間,從而加強了ProxyPass指令的功能。
- 注意:要使用這個功能,必須已經啓用了mod_proxy模塊。
二、使用jk的方式:安全
- <VirtualHost *:80>
- DocumentRoot /home/www/ROOT
- ServerName www.bac.com
- JKMountFile conf/urimap_dongcom.properties
- JkLogFile logs/mod_jk_dongcom.log
- JkLogLevel error
- Options Indexes FollowSymLinks
- RewriteEngine On
- RewriteRule ^/bbs/content-([0-9]+)\.html$ /bbs/content.jsp?id=$1 [P,L]
- </VirtualHost>
Apache之AllowOverride參數詳解服務器
一般利用Apache的rewrite模塊對 URL 進行重寫的時候, rewrite規則會寫在 .htaccess 文件裏。但要使 apache 可以正常的讀取.htaccess 文件的內容,就必須對.htaccess 所在目錄進行配置。從安全性考慮,根目錄的AllowOverride屬性通常都配置成不容許任何Override ,即
< Directory />
AllowOverride None
< /Directory>框架
在 AllowOverride 設置爲 None 時, .htaccess 文件將被徹底忽略。當此指令設置爲 All 時,全部具備 ".htaccess" 做用域的指令都容許出如今 .htaccess 文件中。ssh
而對於 URL rewrite 來講,至少須要把目錄設置爲
< Directory /myblogroot/>
AllowOverride FileInfo
< /Directory>jsp
AllowOverride的參數:ide
AuthConfig 容許使用與認證受權相關的指令(AuthDBMGroupFile, AuthDBMUserFile, AuthGroupFile, AuthName, AuthType, AuthUserFile, Require, 等)。FileInfo 容許使用控制文檔類型的指令(DefaultType, ErrorDocument, ForceType, LanguagePriority, SetHandler, SetInputFilter, SetOutputFilter, mod_mime中的 Add* 和 Remove* 指令等等)、控制文檔元數據的指令(Header, RequestHeader, SetEnvIf, SetEnvIfNoCase, BrowserMatch, CookieExpires, CookieDomain, CookieStyle, CookieTracking, CookieName)、mod_rewrite中的指令(RewriteEngine, RewriteOptions, RewriteBase, RewriteCond, RewriteRule)和mod_actions中的Action指令。Indexes 容許使用控制目錄索引的指令(AddDescription, AddIcon, AddIconByEncoding, AddIconByType, DefaultIcon, DirectoryIndex, FancyIndexing, HeaderName, IndexIgnore, IndexOptions, ReadmeName, 等)。Limit 容許使用控制主機訪問的指令(Allow, Deny, Order)。Options[=Option,...] 容許使用控制指定目錄功能的指令(Options和XBitHack)。能夠在等號後面附加一個逗號分隔的(無空格的)Options選項列表,用來控制容許Options指令使用哪些選項。post
附帶:ssh框架的僞靜態
- <VirtualHost *:80>
- DocumentRoot /home/www/ROOT
- ServerName www.xxx.com
- JKMountFile conf/urimap_dongcom.properties
- JkLogFile logs/mod_jk_dongcom.log
- JkLogLevel error
- Options Indexes FollowSymLinks
- RewriteEngine On
- RewriteRule ^/bbs/content-([0-9]+)\.html$ /bbs/content.jsp?id=$1 [P,L]
- RewriteRule ^/community/bbs\.html$ /community/getallcomlist.action [P,L]
- RewriteRule ^/community/list-([0-9]+)\.html$ /community/community.action?id=$1 [P,L]
- RewriteRule ^/community/content-([0-9]+)-([0-9]+)\.html$ /community/getreplybytheme.action?comId=$1&themeId=$2 [P,L]
- </VirtualHost>