2014-11-14 100 views

回答

2

不,這個問題的答案How can I install SSL on localhost in Ubuntu?工作正常。但是您需要修改conf文件中的幾行代碼。

我設法現在嘗試它,並且工作正常,但我從我的瀏覽器中得到了這個令人討厭的消息,即我訪問的網站不安全。雖然沒關係,因爲它只是自簽名證書。

在我的/etc/hosts中,我爲本地網站添加了多個子域,因爲即使您正在配置虛擬主機,但因爲您的開發網站尚未在線訪問,它也不能正常工作。

說,www.mydomain.comhello.mydomain.comworld.mydomain.com

現在,我們需要啓用SSL模塊

sudo a2enmod ssl

重啓Apache

sudo service apache2 restart

爲自簽署創建一個文件夾SSL證書

sudo mkdir /etc/apache2/ssl

生成SSL密鑰和其他東西

sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/ssl/apache.key -out /etc/apache2/ssl/apache.crt

回答問題的,並使用您的域名稱mydomain.comCommon name

現在我編輯的conf文件我的虛擬主機居住在/etc/apache2/sites-available/mydomain.com.conf

這是裏面有什麼

<IfModule mod_ssl.c> 
<VirtualHost _default_:443> 
    ServerAdmin [email protected] 
    ServerName www.mydomain.com 
    ServerAlias mydomain.com *.mydomain.com 
    DocumentRoot /home/me/projects/www/mysite_folder 
    ErrorLog ${APACHE_LOG_DIR}/error.log 
    CustomLog ${APACHE_LOG_DIR}/access.log combined 
    SSLEngine on 
    SSLCertificateFile /etc/apache2/ssl/apache.crt 
    SSLCertificateKeyFile /etc/apache2/ssl/apache.key 
    <FilesMatch "\.(cgi|shtml|phtml|php)$"> 
     SSLOptions +StdEnvVars 
    </FilesMatch> 

    <Directory "/home/me/projects/www/mysite_folder"> 
     SSLOptions +StdEnvVars 
     Order allow,deny 
     Allow from all 
     # New directive needed in Apache 2.4.3: 
     Require all granted 
     AllowOverride All 
    </Directory> 
    BrowserMatch "MSIE [2-6]" \ 
        nokeepalive ssl-unclean-shutdown \ 
        downgrade-1.0 force-response-1.0 
    BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown 
</VirtualHost> 

如果你已經啓用虛擬主機,你需要跳過此步驟。否則,類型

sudo a2ensite mydomain.com.conf

最後,你需要通過

sudo service apache2 restart

希望它可以幫助您再次重新啓動Apache!您現在可以訪問您的網站使用https

Ex。https://www.mydomain.comhttps://hello.mydomain.comhttps://world.mydomain.com

+0

哇,謝謝。我現在需要設置它。如果它能起作用,我會在晚些時候接受它。 – 2014-11-14 12:50:09