Apache-2.2
Apache:SSL 和非 SSL(沒有 VirtualHosts?)
我有一個 Web 伺服器,並且有兩個我想區別對待的文件夾。
本地文件系統上的一個文件夾應使用 SSL,而另一個不應使用,例如:
/path/to/ssl/site /path/to/nonssl/site
我已經查看了
<Directory>
參數,但您不能SSLEngine
在該級別禁用。[root@host /]# service httpd restart Stopping httpd: [ OK ] Starting httpd: Syntax error on line # of /some/config/file.conf: SSLEngine not allowed here
似乎 using
<VirtualHost>
提供了這種粒度,但我將使用相同的主機名,因此我有點困惑。(匹配萬用字元 *)# need to create a virtualhost for each Non-SSL folder? <VirtualHost *:80> SSLDisable ... ... </VirtualHost> # need to create a virtualhost for each SSL folder? <VirtualHost *:443> SSLEngine on ... ... </VirtualHost>
另外,如果我要添加和附加
<Directory>
,它實際上必須是一個<VirtualHost>
嗎?我知道我可能不了解 Apache 的抽象和一些概念,但我發現很難知道從哪裡開始。
如果有替代方法或我缺少的概念,請告訴我。
VirtualHost
是您想要用來提供 HTTP 和 HTTPS 以及各自不同內容的內容。如果您有一個監聽埠 80 而另一個監聽埠 443,那麼使用相同的名稱不是問題。您不需要SSLDisable
在VirtualHost
埠 80 上執行此操作。您有一個
VirtualHost
處理 HTTPS 流量,另一個處理 HTTP 流量。您可以通過設置DocumentRoot
選項或使用Directory
等來提供不同或相同的內容。