Laravel php artisan serve to mimic HTTPS

后端 未结 3 923
失恋的感觉
失恋的感觉 2021-01-04 00:38

I have been searching around to see if there is a way I can mock SSL for local development using Laravel\'s artisan to serve HTTPS with no luck.

Is this possible and

相关标签:
3条回答
  • 2021-01-04 00:47

    Laravel uses the in-built PHP5.4 development server php -S (http://php.net/manual/en/features.commandline.webserver.php) for it's artisan serve command (see Illuminate\Foundation\Console\ServeCommand). This only supports plain HTTP, so no, this isn't possible. Your best bet would be to use a Vagrant box set up to work with SSL/TLS.

    0 讨论(0)
  • 2021-01-04 00:56

    If you're using xampp, then you can setup HTTPS locally with xampp (this post is also useful for setting up HTTPS) and then you can:

    1. move your project to htdocs folder and visit it with https://localhost/projectFolder/public/

    2. or just create a special VirtualHost in httpd-vhosts.conf for this project (always point to that public folder, this is from where the project is running) and then visit it with https://localhost/ in this example (you can of course, run it on a subdomain if you want to)

      <VirtualHost *:80>
          ServerName localhost
          DocumentRoot "c:\pathToYourProject\projectFolder\public"
          <Directory "c:\pathToYourProject\projectFolder\public">
              Options All
              AllowOverride All
          </Directory>
      </VirtualHost>
      
      # this should ensure https (this is mentioned in the stackoverflow post, that I linked as useful
      <VirtualHost *:443>
          ServerName localhost
          DocumentRoot "c:\pathToYourProject\projectFolder\public"
          SSLEngine on
          SSLCertificateFile "conf\ssl.crt\server.crt"
          SSLCertificateKeyFile "conf\ssl.key\server.key"
          <Directory "c:\pathToYourProject\projectFolder\public">
              Options All
              AllowOverride All
          </Directory>
      </VirtualHost>
      

    Theoretically, when you're using this method, you don't even need php artisan serve (tbh I'm not entirely sure if it has any purpose in this case).

    0 讨论(0)
  • 2021-01-04 01:04

    You can use ngrok for that

    php artisan serve
    cd <path-to-ngrok>
    ./ngrok http localhost:8000
    

    https://ngrok.com/

    0 讨论(0)
提交回复
热议问题