如何在WAMP服务器(v2.5)中启用https(localhost)URL?

app*_*ech 17 php apache ssl https wamp

我正在使用wamp服务器并在localhost中运行php项目.我想使用基于"https"的网址来测试我的项目.

我尝试使用" https:// localhost/myproject / "并将其重定向到"此网页不可用"页面.

我已将"php_openssl"和"ssl"模块启用到apache配置中.但仍无法访问基于https的网址.

azd*_*oud 37

您必须首先使用密钥和证书设置WAMP:

  1. 下载openssl从此处根据您的操作系统选择适当的版本.
  2. 安装它,而不是运行cmd并获取安装位置: cd 'C:\OpenSSL-Win**'确保位于相应的文件夹中

  3. 运行这些命令:

    • C:\OpenSSL-Win..\bin>openssl genrsa -aes256 -out private.key 2048
    • C:\OpenSSL-Win..\bin>openssl rsa -in private.key -out private.key
    • C:\OpenSSL-Win..\bin>openssl req -new -x509 -sha1 -key private.key -out certificate.crt -days 36500 -config C:\OpenSSL-Win..\bin\openssl.cfg

    系统将要求您输入private.key,Country Name等的密码短语.

  4. 完成后,将生成文件:private.keycertificate.crt创建一个文件夹,在此路径中将其命名为keyC:\wamp...bin\apache\apache2.*.**\conf.

  5. 打开此文件httpd.conf.您可以C:\wamp...bin\apache\apache2.*.**\conf通过#在行的开头删除这些行来取消注释,而不是保存文件.

    LoadModule ssl_module modules/mod_ssl.so
    LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
    Include conf/extra/httpd-ssl.conf
    
    Run Code Online (Sandbox Code Playgroud)
  6. 打开httpd-ssl.conf文件你也会发现它并在C:\wamp...bin\apache\apache2.*.**\conf\extra这些行中更改默认值,注意路径,我在ssl里面创建了一个文件夹C:/wamp../bin/apache/apache2.*.**/logs/

    <VirtualHost _default_:443>
    #   General setup for the virtual host
    DocumentRoot "C:/wamp../www"
    ServerName localhost:443
    ServerAdmin admin@example.com
    ErrorLog "C:/wamp../bin/apache/apache2.*.**/logs/ssl/error.log"
    TransferLog "C:/wamp../bin/apache/apache2.*.**/logs/ssl/access.log"
    ....
    CustomLog "C:/wamp../bin/apache/apache2.*.**/logs/ssl/ssl_request.log" \
    ....
    SSLCertificateFile "C:/wamp../bin/apache/apache2.*.**/conf/key/certificate.crt"
    SSLCertificateKeyFile "C:/wamp../bin/apache/apache2.*.**/conf/key/private.key"
    
    Run Code Online (Sandbox Code Playgroud)

    完成后保存您的文件.

  7. 我将ssleay32.dll和libeay32.dll从C:\wamp..\bin\php\php7.0.10文件夹复制到c:\windows\system32.

  8. 最后检查配置进入cd C:\wamp64\bin\apache\apache2.4.23\bin并运行此命令,httpd -t如果一切正常,你会得到.

    C:\wamp64\bin\apache\apache2.4.23\bin>httpd -t
    Syntax OK
    
    Run Code Online (Sandbox Code Playgroud)
  9. https:// localhost /将为你工作:)

  • 这不适用于虚拟主机和自定义localhost域,例如:`https:// project.dev` (3认同)
  • +2,优秀的教程,只有两件事,A)在步骤1中,版本1.0.2似乎适用于64位wamp.B)我需要在第8步之后重新启动wamp.谢谢.注意:[如果是64位wamp,无法加载ssl mod错误](/sf/answers/2803595651/) (2认同)
  • 对于在生成 certificate.crt 文件时遇到问题的任何人,请尝试将路径用引号括起来,如下所示:`openssl req -new -x509 -sha1 -key private.key -out certificate.crt -days 36500 -config "C:\OpenSSL -Win..\bin\openssl.cfg"` (2认同)

Dav*_*cho 1

默认情况下,您不能对 wamp 连接使用 https 协议。您需要做的是在wamp上设置一个自签名证书。

请按照本教程获取更多信息。

  • 虽然此链接可以回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接的答案可能会变得无效。- [来自评论](/review/low-quality-posts/14366683) (18认同)
  • 刚刚通过粗略的 Google 搜索到达这里,我可以检查一下您是否能够更新此答案以包含外部(链接)教程的基本部分吗?另外,考虑到发布以来的时间,如果实践过时,*可能*值得更新所选教程(尽管我还没有阅读该教程,所以我不确定是否有必要)。 (4认同)