日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

Linux系統(tǒng)小型日程表挑戰(zhàn)大型群件

群件很強(qiáng)大也很重要 。如果需要,可以購(gòu)買(mǎi)一個(gè)群件系統(tǒng) ?;蛘呖赡苁且粋€(gè)集群 —— 有一個(gè)使用了 RAID 的專(zhuān)用的數(shù)據(jù)庫(kù)服務(wù)器,以及磁帶備份的保證,還有單獨(dú)的機(jī)器來(lái)運(yùn)行界面 。為什么?當(dāng)然是因?yàn)樗煽?,而且可以根?jù)負(fù)載擴(kuò)展!
不過(guò),您可能不會(huì)處理非常多的調(diào)度任務(wù),以至于需要使用消耗大量?jī)?nèi)存的應(yīng)用程序 ??赡苤皇切枰撤N基于 Web 的日程表界面,以及核查需要做的項(xiàng)目的能力 。
可能并不需要 30 兆字節(jié)大小的類(lèi)庫(kù)、由一組本體專(zhuān)家(ontologists)來(lái)設(shè)計(jì)對(duì)象模型,或者依賴(lài) 15 個(gè)其他軟件包 。這里是我的目標(biāo):盡可能只使用系統(tǒng)附帶的功能來(lái)運(yùn)行那些應(yīng)用程序 。
業(yè)務(wù)的第一個(gè)步驟
首先,需要確保老機(jī)器可以運(yùn)行某個(gè) Web 服務(wù)器和某些 CGI 腳本 。方便的是,我們的機(jī)器已經(jīng)擁有了一個(gè) Web 服務(wù)器,其根位于 /var/www/htdocs.檢查配置文件(/etc/apache/httpd.conf),可以發(fā)現(xiàn)默認(rèn)把 ExecCGI 和 Includes 都關(guān)閉了 —— 不過(guò)我想把它們打開(kāi),讓我的 Web 頁(yè)面華麗而生動(dòng) 。
之后的 Options 那一行是相關(guān)的設(shè)置 。我添加了 ExecCGI 和 Includes 選項(xiàng) 。如果沒(méi)有服務(wù)器端解析的文件的支持,Includes 不會(huì)做什么事情;在 httpd.conf 中有一些注釋掉的行將完成此任務(wù) 。我去掉了這三行的注釋?zhuān)ǖ宰屇切┱嬲淖⑨尡3直蛔⑨專(zhuān)?br />
[...]
AddHandler cgi-script .cgi

#
# To use server-parsed HTML files
#
AddType text/html .shtml
AddHandler server-parsed .shtml
[...]
完成后,執(zhí)行 apachectl restart,讓 Apache 重新加載其配置文件 。為節(jié)約以 root 身份登錄的時(shí)間,可以將 /var/www/htdocs 的所有者設(shè)置為您的個(gè)人帳號(hào) 。我這樣做了,而且還刪除了在線手冊(cè)和默認(rèn)的索引頁(yè) 。
在計(jì)算機(jī)科學(xué)中有一句諺語(yǔ),“百分之十的工作可以解決百分之九十的問(wèn)題” 。就此想法,我為這個(gè)應(yīng)用程序制作了一個(gè)首頁(yè)草稿,囊括了這個(gè)程序預(yù)期的主要工作:

Yo! Do the dishes.
現(xiàn)在只需要測(cè)試 CGI 處理 。我的測(cè)試叫做 env.cgi,并不大,但是很實(shí)用:

#!/usr/bin/perl -w
use Env;
use CGI;

print "Content-Type: text/plainnn";
foreach $k (sort keys %ENV) {
print "$k: $ENV{$k}n";
}
exit 0;
您會(huì)注意到,我實(shí)際上并沒(méi)有使用 CGI 模塊;之所以引用它,是為了確保它已經(jīng)安裝 。將它放在適當(dāng)?shù)奈恢茫铱梢源_認(rèn) CGI 腳本正在運(yùn)行 。我將機(jī)器在網(wǎng)絡(luò)上命名為“crate”,所以,對(duì) http://crate/env.cgi 的訪問(wèn)結(jié)果如我所想:

[...]
REMOTE_ADDR: 205.166.146.66
REMOTE_PORT: 62594
REQUEST_METHOD: GET
REQUEST_URI: /env.cgi
SCRIPT_FILENAME: /var/www/htdocs/env.cgi
SCRIPT_NAME: /env.cgi
SERVER_ADDR: 205.166.146.93
SERVER_ADMIN: root@midas.slackware.lan
SERVER_NAME: crate.plethora.net
SERVER_PORT: 80
SERVER_PROTOCOL: HTTP/1.1
那非常有利于調(diào)試 —— 它發(fā)現(xiàn)我那部分有一個(gè)錯(cuò)誤 。我忘記去修改 httpd.conf 中的 ServerAdmin 行了 。很容易修改 。您的用戶名不存在 。請(qǐng)走開(kāi) 。
安全性是早期出現(xiàn)的問(wèn)題之一 。您不會(huì)希望讓所有人都可以留下關(guān)于午餐所有者的危險(xiǎn)記錄 。進(jìn)入訪問(wèn)控制 。
這需要對(duì) httpd.conf 進(jìn)行更多修改,允許 .htaccess 文件限制對(duì)站點(diǎn)的訪問(wèn) 。那表示要向允許訪問(wèn)列表中添加“Limit AuthConfig”,覆蓋頂層配置文件 。
接下來(lái)需要一個(gè) .htaccess 文件 。從這里開(kāi)始:

AuthUserFile /var/www/htpasswd
AuthGroupFile /dev/null
AuthName "Roommates Only"
AuthType Basic
require valid-user
htpasswd 文件并不是以普通形式存在于文檔樹(shù)中 。那樣做是有目的的;不能為攻擊者創(chuàng)造有利條件 ??梢允褂?htpasswd 命令初始化 htpasswd 文件:

推薦閱讀