在 jexus 的工作檔案夾中(一般是“<code>/usr/jexus</code>”)有一個基本的配置檔案,檔案名是“<code>jws.conf</code>”。
<code>jws.conf</code> 中至少有 <code>siteconfigdir</code> 和 <code>sitelogdir</code> 兩行資訊:
重要提示:
必須為jexus指定并建立兩個專用檔案夾:一個是用于存放日志檔案的“<code>日志檔案夾</code>”,一個是存放網站配置檔案的“<code>網站配置檔案夾</code>”。
<code>日志檔案夾</code>必須讓jexus系統有寫入權,因為它會在這兒寫入jexus系統日志、網站通路日志等重要内容,安裝程式中已經建了一個檔案夾,名字是log。
<code>網站配置檔案夾</code>是用存放網站配置檔案的地方(安裝包中已經建了這個檔案夾,名字是siteconf),既使隻有一個網站,也必須有這個檔案夾,因為jexus啟動時會從這個檔案夾讀取網站配置的内容。
即,預設情況下,jexus的檔案夾結構是:
jexus支援多站點,可以用不同的端口、域名、虛拟路徑設定任意多的網站。
必須把所有網站配置檔案放到<code>jws.conf</code>指定的網站配置檔案夾内(這個檔案夾常常是jws工作目錄内的“<code>siteconf</code>”檔案夾),這個檔案夾除了網站配置檔案,不能有其它任何檔案,因為jexus會認為這兒的任何一個檔案都代表着一個不同的網站。
每個網站有且隻有一個配置檔案,配置檔案的檔案名就是這個網站的名稱,比如 www.mysite.cn這個網站,配置檔案名可以寫成“mysite”,當然也可以寫成其它檔案名,以便管理者容易記憶和識别,但要特别注意:檔案名不能有空格!
一個網站可以擁有任意多的域名,不同網站不能有相同的域名,沒有域名的網站隻能有一個,這個沒有域名的網站叫做“預設網站”,而一台伺服器最多隻能有一個預設網站。
再次強調:
1、網站配置檔案的檔案名不能有空格;
2、網站配置檔案夾中隻能有網站配置檔案,不能有其它檔案檔案存在。
下面以www.mysite.cn為例,說說網站的配置:
在網站配置檔案夾中建立一個檔案,這個檔案的名稱應該有一些意義(至少要能讓伺服器管理者了解這個配置檔案是屬于哪一個網站的)。
設這個網站的配置檔案的檔案名為:mysite。運作以下指令,編輯配置檔案:
最簡配置隻需port和root兩項,如:
注意:
以上兩個條目的含義:“port=80”指本網站的服務端口是80(标準的web服務端口);“root=/ /var/www/default”是指該網站的的虛拟根路徑是“/”,所對應的實體檔案夾的絕對路徑是“/var/www/default”,即網站的内容必須放到“/var/www/default”這個檔案夾中。
網站配置的進階選項全是可選項,應該根據網站的實際需要選填。
靈活使用進階選項,可以架設出一台與衆不同的、功能強大的伺服器平台或者伺服器群組。
url重寫是指web伺服器将通路者的請求url路徑資源按指定的比對規則解釋和比對為另外的一個真實rul路徑資源。
比如,希望别人通路“.php”類型的檔案時,伺服器傳回 /404.html 這個檔案:
格式:
“rewrite=”的後面是兩部分阻成,兩部分之間由一個空格分開。
① 空格前是比對的條件:用正規表達式描述url的比對條件。
② 空格後是比對的目标:指的是如果使用者通路的路徑合乎前面的比對條件,伺服器将以哪個規則回應。
又如:
把“/bbs”解析為“/bbs/index.aspx”,把“/bbs/file-1” 比對為 “/bbs/show.aspx?id=1”:
格式解釋:
rewrite的等号後含有兩部分内容,用空隔分開。前半部分是一個正規表達式,用于描述需要url重寫的(使用者浏覽器中的)url路徑樣式,後半部分是當使用者的url合乎前面的正規表達式時,jws應該重寫和通路的真實url路徑。
預設情況下,允許所有ip位址通路。如果手工設定ip位址白名單,那麼,白名單之外的ip位址會自動歸入黑名單。
配置格式,形如:
預設情況下,本配置為空。如果手工添加需要禁止通路的ip位址(段),必須合乎一個規則:黑名單必須是白名單的真子集。
denydirs=網站檔案夾路徑的url路徑,如 “/abcfiles”或 “~/abcfiles”,多個路徑,用英文逗号分開
本選項預設是true,即需要檢查,除非你的确需要關掉這個選項,否則可以不填,格式如下:
(關掉本項可以提高伺服器速度,但就安全而言,不建議關掉它)
這是jexus特有的功能,指的是如果伺服器不存在使用者要通路的檔案,伺服器将使用什麼檔案應答。
提示:
路由後,原url路徑會存貯在jexus特有一個伺服器變量“x-real-uri”中。
技巧:
用這個功能,或者再加上url rewrite功能,你完全可以把url路徑與真實路徑隔離開來,達到資訊隐藏和簡化url的作用。
禁用網站日志功能會提高web伺服器系統的的處理速度,但不足也是明顯的,就是你無法詳細了解網站的通路情況了。
v5.6.3版預設值是true,即預設使用長連接配接,可以不填。
參數的值由本站url根路徑和目标網站url根路徑兩部分組成,之間用空隔分開。
反向代量的目标位址可以有多個,用英文逗号分隔,如:
這時,當使用者通路/abc/時,jexus就會随機選擇一台伺服器進行通路,達到負載均衡或伺服器叢集的效果。
對于tcp連接配接:
示例:
fastcgi.add=php,php3|tcp:127.0.0.1:9000
對于unix sockets:
fastcgi.add=php,php3|socket:/tmp/phpsvr
解釋:
啟用這個功能後,當使用者通路“.htm”“.js”等檔案時,jexus會将這些檔案進行gzip壓縮後發送給使用者浏覽器,這樣,可以節約更多的網絡帶寬。
在<code>jws.conf</code>中,添加一句:<code>httpd.user=系統中已經存在的一個使用者名</code>,如<code>httpd.user=www-data</code>
在<code>jws.conf</code>中,添加一句:<code>runtime=版本号</code>,如:<code>runtime=v4.0.30319</code>
這是jexus特有的功能。功能很強勁、很實用。
方法是:在需要啟用web平台級高速緩存的aspx頁面中加入“<code><%response.addheader("pagecache-time","60");%></code>”一句就行了,其中“60”是逾時時間,機關為秒。
本功能是對伺服器與客戶之間的資料進行加密傳送,提高資料轉輸過程中的保密性。具體方法請通路www.linuxdot.net。
預設配置下,jexus是以單程序模式工作的,單程序的好處是配置簡單,節約記憶體,但弱點也很明顯,比如,難以充分發揮多cpu多核的性能優勢,大并發承受力、容災力較多程序弱等等。
是以,在多cpu(核)的伺服器上開啟多程序,有利于提高處理速度、大并發承載能力以及服務的穩定性和容錯能力。
開啟多個工作程序的辦法:修改<code>jws.conf</code>檔案中的<code>httpd.processes</code>行,去掉前邊的#号,并在等于後填上需要開啟的程序數量(不超過cpu核數+1,同時,最多不超過8個)。
強調:
開啟多程序後,asp.net網站的session狀态服務不能再使用inproc模式,而應該使用“stateserver”等其它模式并在web.config中配置“machinekey”,否則會出現session資料丢失等現象。
這是5.5版開始啟用的參數,在<code>jws.conf</code>中設定,格式為:
機關是“兆位元組”,可取值範圍是256-伺服器可用實體記憶體大小的整數,同時,平均到每個工作程序不能少于128m,0表示由jexus根據實體記憶體的大小自動設定。
機關是“秒”,可取值範圍是300-14400的整數。0表示禁用此項
原jws.start等指令在jexus v5.6.3中已經合并為一個單一指令,即“jws”,這是一個shell腳本檔案。
指令參數與對應的功效:
注意,這些腳本的擁有者應該是root,并且擁有可執行權限。
方法是:在<code>/etc/rc.local</code>檔案的加入“<code>/usr/jexus/jws start</code>”一行。注意,路徑應該是你系統中jws的實際路徑,不要把路徑寫錯了。
1、在rc.local檔案中删除你手工添加的開機自動啟動jexus的指令行(如果本來就沒有添加過,這步操作就不必做了)
2、删除jexus檔案夾及全部内容(建議隻删除.exe和.dll,其它的,比如網站配置檔案等不必删除,以便将來重新啟用)。