Apache支援的三種語言、簽證製作、網頁重寫
一、Apache預設支援的三種語言:html php cgi
1.預設支援html,不需要更改設定2.設定支援php,訪問php頁面 cd /var/www/html vim index.php
<?php
phpinfo();
?>
systemctl restart httpd
yum install php -y cd /etc/httpd/conf.d #就會出現php.conf檔案 預設釋出檔案 systemctl restart httpd 測試:在瀏覽器上訪問index.php指令碼就可以出現結果
3.設定支援cgi,訪問cgi頁面,一般用於使用者註冊 cd /var/www/html mkdir cgi cd /var/www/html/cgi vim index.cgi
#!/usr/bin/perl
print "Content-type: text/html\n\n";
print `date`;
chmod 755 index.gci 指令碼要有執行許可權 vim /etc/httpd/conf.d/a_default.conf
<Virtualhost _default_:80> DocumentRoot /var/www/html CustomLog logs/default.log combined </Virtualhost> <Directory "/var/www/html/cgi"> Options +ExecCGI AddHandler cgi-script .cgi </Directory>
systemctl restart httpd.service 測試:在瀏覽器上訪問index.cgi指令碼就可以出現結果
二、Apache簽證製作
1.埠介紹:
http:80埠 https:443埠
2.HTTPS
http+ssl,在http應用層多了一層SSL,通俗的講,就是客戶端和服務端擁有一串沒有第三者知道的金鑰,通訊時:用金鑰解密得到的內容或者將內容加密傳送給對方。
3.配置過程
yum install mod_ssl -y 安裝mod_ssl 產生ssl.conf檔案
cd /etc/httpd/conf.d 此目錄裡面多了一個ssl.conf檔案 systemctl restart httpd yum install crypoto-utils -y 製作證書,安裝此軟體 genkey www.xaut.com 為某個域名生成證書 過程:next-->選擇大小-->next-->No-->next-->填寫資訊 vim ssl.conf
SSLCertificateFile /etc/pki/tls/certs/www.xaut.com.crt 將生成的證書和鑰匙新增到此檔案裡面
SSLCertificateKeyFile /etc/pki/tls/private/www.xaut.com.key
systemctl restart httpd
4.測試 用https://www.xaut.com訪問,就可以看到顯示的證書是我們的製作的證書
三、網頁重寫:
1.什麼是網頁重寫
輸入某個域名主動跳到https訪問
在網頁上不是所有網址都是訪問https,只有需要輸入使用者名稱密碼的才會跳到https頁面,所以我們可以製作一個域,只要是訪問這個域,我們就主動跳轉到https訪問2.檔案配置
mkdir /var/www/virtual/login/html -p cd /var/www/virtual/login/html vim index.html <h1>login</h1>
cd /etc/httpd/conf.d cp news.conf login.conf vim login.conf
<VirtualHost *:443>
ServerName login.xaut.com
DocumentRoot /var/www/virtual/login/html
CustomLog logs/login.log combined
SSLEngine on
SSLCertificateFile /etc/pki/tls/certs/www.xaut.com.crt
SSLCertificateKeyFile /etc/pki/tls/private/www.xaut.com.key
</VirtualHost>
<Directory "/var/www/html/login/html">
Require all granted
</Directory>
<Virtualhost *:80>
ServerName login.xaut.com
RewriteEngine On 開啟網頁重寫
RewiteRule ^(/.*)$ https://%{HTTP_HOST} $1 [redirect=301] 輸入的地址前面自動加上https
</Virtualhost>
systemctl restart httpd
3.引數解釋 ^(/.*)$ :表示客戶在瀏覽器上輸入的全部字元 https:// :強制客戶加密訪問 %{HTTP_HOST} :客戶請求主機 $1 :表示^(/.*)$的值 [redirect=301] :表示轉換是臨時的,302表示永久4.測試
www.xaut.com 自動把地址變成 https://www.xaut.com