简体   繁体   中英

HTTP to HTTPS redirect Vagrant

So I've been having an issue with Vagrant and Port Forwarding...

Currently, Vagrant is already forwarding ports 80 -> 8080 and 443 -> 8443. Issue is, I don't want a client to have to type ports 8443 and 8080 to access my web page. So now, the client has to type in 127.0.0.1:8080 or 127.0.0.1:8443 to access the webpages.

How would I go about changing this? My current stack is VM, Vagrant, Apache, Django.

I have 2 VHosts setup. Heres my sites-available/mysite.com file

<VirtualHost *:80>
              ServerAdmin webmaster@example.com
              #ServerName  spritebots.com
              #ServerAlias www.spritebots.com
              ServerName 127.0.0.1
              ServerAlias 127.0.0.1
              ProxyRequests off
              ProxyPreserveHost On
              ProxyPass / https://127.0.0.1:8443
              ProxyPassReverse / https://127.0.0.1:8443

              #Redirect permanent / https://127.0.0.1:8443
</VirtualHost>

<VirtualHost *:443>
              WSGIDaemonProcess spritebots
              WSGIProcessGroup spritebots
              WSGIScriptAlias / /var/www/spritebots/apps/wsgi.py

              ServerAdmin  webmaster@example.com
              #ServerName   spritebots.com
              #ServerAlias  www.spritebots.com
              ServerName  127.0.0.1
              ServerAlias 127.0.0.1

              DocumentRoot /var/www/spritebots/

              Alias /media/ /var/www/spritebots/static/media/
              Alias /static/ /var/www/spritebots/static/

              <Directory /var/www/spritebots/static>
              Order deny,allow
              Allow from all
              </Directory>

              <Directory /var/www/spritebots/static/media>
              Order deny,allow
              Allow from all
              </Directory>

              SSLEngine on
              SSLCertificateFile /etc/ssl/certs/spritebots.crt
              SSLCertificateKeyFile /etc/ssl/certs/spritebots.key

</VirtualHost>

So I bought a domain name, spritebots.com and I can't even get spritebots.com to point to 127.0.0.1:8443.

But for now, I would like for anyone visiting my site at 127.0.0.1, to be redirected 127.0.0.1:8443, then mask the port number. Basically like how every production web page is with HTTPS enabled.

Does a majority of developers/companies use vagrant or VMs for production web sites? Because I feel that Vagrant's port forwarding is messing this up. Or it's more possibly me just being ignorant of web development. :(

Any help would be greatly appreciated!

In your Vagrantfile, you can assign your VM a private network IP, by dropping in:

  config.vm.network "private_network", ip: "192.168.50.5"

Then you don't have to mess with ports.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM