next up previous contents
Next: 網站存取限制 Up: Apache 2.4 HTTP Server Previous: Virtual Host 虛擬主機   Contents

架設動態網頁

  1. 動態網頁要求如:
    1. 網址為 dynamic5.deyu.wang。
    2. 端口為 8989。
    3. 動態網頁內容,請從 http://dywang.csie.cyut.edu.tw/materials/webapp.wsgi 下載。
    4. 用戶端連線 http://dynamic5.deyu.wang:8989/ 時,應該會以下載的 webapp.wsgi 產生頁面。
    5. http://dynamic5.deyu.wang:8989/ 可以讓 deyu.wang 網域內的主機存取。

  2. 安裝 mod_wsgi 模組。
    [root@kvm5 ~]# yum install mod_wsgi -y
    
  3. 編輯 httpd 設定檔增加 Listen port 8989,並設定虛擬主機 dynamic5.deyu.wang 的 port 為 8989,且其根目錄為 /var/www/html/webapp.wsgi。
    [root@kvm5 ~]# vim /etc/httpd/conf/httpd.conf 
    [root@kvm5 ~]# grep ^Listen /etc/httpd/conf/httpd.conf 
    Listen 80
    Listen 8989
    [root@kvm5 ~]# tail -10 /etc/httpd/conf/httpd.conf 
    IncludeOptional conf.d/*.conf
    <Virtualhost *:80>
    	Documentroot	/var/www/html
    	Servername	kvm5.deyu.wang
    </Virtualhost>
    <Virtualhost *:8989>
    	Documentroot	/var/www/html
    	Servername	dynamic5.deyu.wang
    	WSGIScriptAlias / /var/www/html/webapp.wsgi
    </Virtualhost>
    
  4. 防火牆開放 8989/tcp port 後重新載入。
    [root@kvm5 ~]# firewall-cmd --permanent --zone=public --add-port=8989/tcp
    success
    [root@kvm5 ~]# firewall-cmd --reload 
    success
    
  5. 增加 8989/tcp port 的 selinux port type 為 http_port_t,在 SELinux 啟動的情況下,不執行此動作則無法正常啟動 httpd 服務。
    [root@kvm5 ~]# semanage port -a -t http_port_t -p tcp 8989
    
  6. 重新載入 httpd 服務設定。
    [root@kvm5 ~]# systemctl reload httpd.service
    
  7. 下載 webapp.wsgi,並存成 /var/www/html/webapp.wsgi。
    [root@kvm5 ~]# wget http://dywang.csie.cyut.edu.tw/materials/webapp.wsgi \
    -O /var/www/html/webapp.wsgi
    
  8. 在 kvm5.deyu.wang 成功連線 http://dynamic5.deyu.wang:8989/。
    [root@kvm5 ~]# curl http://dynamic5.deyu.wang:8989/
    Content generated for:  192.168.122.5 (deyu.wang)
    [root@kvm5 ~]#
    
  9. 在 kvm7.deyu.wang 成功連線 http://dynamic5.deyu.wang:8989/。
    [root@kvm7 ~]# curl http://dynamic5.deyu.wang:8989/
    Content generated for:  192.168.122.7 (deyu.wang)
    [root@kvm7 ~]#
    



2016-06-02