我在本地Ubuntu機器上創建了一個Laravel
應用程序。但我想在其所有通配符子域上使用HTTPS
。我怎樣才能在本地做到這一點?順便說一下,我在etc/hosts
上添加了我的網站網址,因此我不需要鍵入localhost
,而是使用www.mysite.loc
。在本地主機上的通配符子域上設置HTTPS
在這個問題上的回答How can I install SSL on localhost in Ubuntu?,我想只會在主域名上工作。
我在本地Ubuntu機器上創建了一個Laravel
應用程序。但我想在其所有通配符子域上使用HTTPS
。我怎樣才能在本地做到這一點?順便說一下,我在etc/hosts
上添加了我的網站網址,因此我不需要鍵入localhost
,而是使用www.mysite.loc
。在本地主機上的通配符子域上設置HTTPS
在這個問題上的回答How can I install SSL on localhost in Ubuntu?,我想只會在主域名上工作。
不,這個問題的答案How can I install SSL on localhost in Ubuntu?工作正常。但是您需要修改conf
文件中的幾行代碼。
我設法現在嘗試它,並且工作正常,但我從我的瀏覽器中得到了這個令人討厭的消息,即我訪問的網站不安全。雖然沒關係,因爲它只是自簽名證書。
在我的/etc/hosts
中,我爲本地網站添加了多個子域,因爲即使您正在配置虛擬主機,但因爲您的開發網站尚未在線訪問,它也不能正常工作。
說,www.mydomain.com
,hello.mydomain.com
,world.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.com
爲Common 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.com
,https://hello.mydomain.com
,https://world.mydomain.com
哇,謝謝。我現在需要設置它。如果它能起作用,我會在晚些時候接受它。 – 2014-11-14 12:50:09