rhel7 http執行個體
配置web:虛拟主機配置;https;不同端口虛拟主機
配置WWW
/etc/httpd/conf/httpd.conf是主要配置檔案
/etc/httpd/conf.d/*.conf很多額外的參數檔案,擴充名是.conf,一般在這裡面配置,好處是當更新系統時,不需要改動原來的配置檔案,隻要将.conf複制到正确的地點即可。維護更友善!尤其是虛拟主機經常使用這樣的設定,在遷移時很友善。
伺服器環境設定參數:
Listen 80
#與監聽接口有關,預設開放在所有的網絡接口。也可以修改端口,如8080
LoadModule auth_basic_module modules/mod_auth_basic.so
……
#加載子產品的設定項目。Apache提供很多有用的子產品(就是外挂)給我們使用
Include conf.d/*.conf
#因為這一行,是以放置到/etc/httpd/conf.d/*.conf的設定都會被讀入
User apach
Group apache
#prework、worker等子產品所啟動的process的屬主與屬組設定
#這個設定很重要,因為未來你提供的網頁檔案能不能被浏覽都與這個身份有關
ServerAdmin [email protected]
#系統管理者的E-mail,當網站出現問題時,錯誤資訊會顯示的聯系郵箱(錯誤回報)
ServerName server0
#設定主機名,這個值如果沒有指定的話,預設會以hostname的輸出為依據
#千萬記得,你填入這個主機名要找的到IP(DNS或/etc/hosts)
UseCanonicalName Off
#是否使用标準主機名?如果你的主機有多個主機名,若這個設定為On,那麼Apache隻接受上面servername指定的主機名連接配接而已。請使用Off
DocumentRoot "/var/www/html"
#首頁的放置目錄,但是必須要特别留意這個設定目錄的權限以及selinux的相關規則與類型(type)
DirectoryIndex index.html index.html.var index.cgi
#首頁"檔案的檔案名"設定,Apache預設以index.*為開關,windows則以default.*開關。
目錄相關權限:
<Directory>
Options Indexes FollowsYmLinks……
AllowOverride ALL AuthConfig……
Order、allow,deny deny, allow……
deny、allow from all、172.25.0.11、172.25.0.0/24 、valid-user……
</Directory>
Options(目錄參數)
此設定值表示在這個目錄内能夠讓Apache進行的操作,也就是針對Apache的程式的權限設定。主要的參數值有:
Indexes:
如果在此目錄下找不到首頁檔案(預設為index.html)時,就顯示整個目錄下的檔案名,至于首頁檔案名則與DirectoryIndex設定有關。
FollowSymLinks:
這是follow sysmbolic links的縮寫,字面意義是讓連接配接檔案可以生效。我們知道首頁目錄在/var/www/html,既然是www的根目錄,理論上就像被chroot一般。一般來說被chroot的程式将無法離開其目錄,也就是說預設的情況下,你在/var/www/html下面的連接配接檔案隻要連結到非此目錄的其它目錄。則該連接配接檔案預設是失效的。但使用此設定即可以讓連接配接檔案有效地離開本目錄。
ExecCGL:
讓此目錄具有執行CGI程式的權限,非常重要。舉例來說,之前熱門的openwebmail使用了很多的perl程式,你要讓openwebmail可以執行,就需要在該程式所在的目錄擁有ececCGI的權限才行。但請注意,不要讓所有目錄均可使用ececCGI。
includes:
讓一些server-side include程式可以運作。建議加上去!
MultiViews:
這個有像是多國語言的支援,與語言資料(LanguagePriority)有關。在錯誤資訊的回報内容中最常見,在同一台主機中,可以依據用戶端的語言而給予不同的語言顯示。預設在錯誤回報資訊當中存在,你可以檢票一下/var/www/error/目錄下的資料。
AllowOverride(允許的覆寫參數功能)
表示是否允許額外配置檔案.htaccess的某些參數覆寫。我們可以在httpd.conf内設定好所有的權限,不過如此一來,若使用者自己的個人網頁想要修改權限時将會對管理者造成困擾。是以,apache預設可以讓使用者以目錄下面的.htaccess檔案内覆寫<Directory>内的某些功能參數。這個項目則是在規定.htaccess可以覆寫的權限類型有哪些。常見的有:
ALL:
全部的權限均可被覆寫。
AuthConfig:
僅有網頁認證(賬号與密碼)可覆寫。
僅允許Indexes方面的覆寫。
Limits:
允許使用者利用Allow、Deny與Order管理可浏覽的權限。
None:
不可覆寫,也就是讓.htaccess檔案失效。
Order、allow、deny(能否登入浏覽的權限)
決定此目錄是否可被Apache的PID所浏覽的權限設定。能否被浏覽主要有兩種判斷的方式:
deny,allow:以deny優先處理,但沒有寫入規則的則預設為allow。
allow,deny: 以allow優先處理,但沒有寫入規則的則預設為deny。
執行個體:
第十三題http
在server0上搭建一個域名為server0.example.com的web伺服器其主目錄位置随意,下載下傳ftp://server.domain0.example.com/pub/html/server0.html到網站的家目錄下,并更改命名為index.html,請勿修改網頁内容。
伺服器
yum -y install http*
firewall-cmd --per --add-serve=http
firewall-cmd --relo
cd /var/www/html
vim index.html
12
cd /etc/httpd/conf.d
cp /usr/share/doc/httpd-2.4.6/httpd-vhosts.conf hrr.conf
vim hrr.conf
<VirtualHost *:80>
DocumentRoot "/var/www/html/"
ServerName server0.example.com
ErrorLog "/var/log/httpd/server0.example.com-error_log"
CustomLog "/var/log/httpd/server0.example.com-access_log" common
</VirtualHost>
setsebool -P httpd_read_user_content 1
systemctl restart httpd
客戶機
[root@desktop0 conf.d]# curl http://server0
[root@desktop0 conf.d]#
第十四題 https
請在server0上針對server0.example.com網站開啟ssl功能,請從ftp://classroom.example.com/pub/http/ssl/處下載下傳caert.crt,httpd.crt,httpd.key三個證書檔案到你本地的合适的目錄下
yum -y install *ssl*
vim /etc/httpd/conf.d/hrr.conf
<VirtualHost *:443>
SSLEngine on
SSLProtocol all -SSLv2
SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5
SSLHonorCipherOrder on
SSLCertificateFile /etc/pki/tls/certs/server0.crt
SSLCertificateKeyFile /etc/pki/tls/private/server0.key
SSLCertificateChainFile /etc/pki/tls/certs/example-ca.crt
firefox
[root@desktop0 conf.d]# curl https://server0:443
curl: (60) Peer's certificate issuer has been marked as not trusted by the user.
More details here: http://curl.haxx.se/docs/sslcerts.html
curl performs SSL certificate verification by default, using a "bundle"
of Certificate Authority (CA) public keys (CA certs). If the default
bundle fil
本文轉自810105851 51CTO部落格,原文連結:http://blog.51cto.com/4708948/1702486,如需轉載請自行聯系原作者