当前位置: 首页 > 知识库问答 >
问题:

在使用虚拟主机时,如何在XAMPP使用https (SSL)

顾磊
2023-03-14

我正在本地计算机上编写一个php应用程序,并想测试SSL是否正常工作。请耐心等待,因为这是我第一次使用SSL。

到目前为止,这就是我所做的:

  1. Created a SSL Certificate. I followed the first part of this this tutorial to create the certificate.
  2. I imported the server.crt file into chrome.
  3. Removed the semicolon in front of ;extension=php_openssl.dll in php.ini (reference)
  4. Edited my httpd-vhosts.conf file based on this page. The relevant section of that file is below. This is the full file: http://pastebin.com/k6Jh2eR6
    <VirtualHost *>
        DocumentRoot "C:\Users\user_name\Documents\project_one"
        ServerName project_one.localhost
        SSLEngine on
        SSLCertificateFile "conf/ssl.crt/server.crt"
        SSLCertificateKeyFile "conf/ssl.key/server.key"
        <Directory "C:\Users\user_name\Documents\project_one">
            AllowOverride All
            Order allow,deny
            Allow from all
        </Directory>
    </VirtualHost>
    

    我通常会通过输入 http://project_one.localhost 来访问我的项目

    当尝试通过在 chrome 中键入 https://project_one.localhost 来访问我的项目时,我会自动转发到 https://project_one.localhost/xampp/(好像 XAMPP 根本不会将 https://project_one.localhost 识别为子域,并将其视为我正在输入 https://localhost)知道我在哪里搞砸了吗?

    注意:

    • 加载模块ssl_module模块/mod_ssl.sohttpd.conf文件
    • 中未注释

共有3个答案

贺乐意
2023-03-14
匿名用户

这可能是一个老问题,但我还是把我的答案放在这里,以供将来参考

我正在使用XAMPP 3.2.1,2013年5月7日编译

同时启用带有SSL虚拟主机,这就是我所做的。(我正在使用视窗 7)

    < li >您的windows HOST文件必须已经安装完毕 < li >转到位于< code > xampp \ Apache \ conf \ extra 的< code>httpd-ssl.conf

我只是复制了_default_虚拟主机并添加了我的配置。我删除了较短的所有注释,并将其粘贴到默认的虚拟主机下方,只需更改DocumentRoot服务器名,然后重新启动apache。

<VirtualHost *:443>
    DocumentRoot "***path/to/your/project}***"
    ServerName ***yourdomain***
    ServerAdmin admin@example.com
    ErrorLog "C:/xampp/apache/logs/error.log"
    TransferLog "C:/xampp/apache/logs/access.log"
    SSLEngine on
    SSLCertificateFile "conf/ssl.crt/server.crt"
    SSLCertificateKeyFile "conf/ssl.key/server.key"

    <FilesMatch "\.(cgi|shtml|phtml|php)$">
        SSLOptions +StdEnvVars
    </FilesMatch>
    <Directory "C:/xampp/apache/cgi-bin">
        SSLOptions +StdEnvVars
    </Directory>

    BrowserMatch "MSIE [2-5]" \
             nokeepalive ssl-unclean-shutdown \
             downgrade-1.0 force-response-1.0

    CustomLog "C:/xampp/apache/logs/ssl_request.log" \
              "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>

田博易
2023-03-14

这是简单的步骤。

  1. 转到 C:\xampp\apache\conf

打开httpd.conf

并启用ssl扩展(从行中删除#)

LoadModule ssl_module modules/mod_ssl.so
孟鸿朗
2023-03-14

SSL是 HTTPS://url.here/ 种,完全由Apache处理,与PHP或任何PHP的扩展/模块或任何PHP.ini设置无关。

一个典型的支持SSL的虚拟主机如下所示,至少包含以下部分...

<VirtualHost *:443>
    DocumentRoot "C:/WampDeveloper/Websites/www.example.com/webroot"
    ServerName www.example.com
    ServerAlias example.com

    SSLEngine On

    SSLCertificateFile "C:/WampDeveloper/Websites/www.example.com/certs/public.crt"
    SSLCertificateKeyFile "C:/WampDeveloper/Websites/www.example.com/certs/private.key"

    <Directory "C:/WampDeveloper/Websites/www.example.com/webroot">
        Options All
        AllowOverride All
        order allow,deny
        allow from all
    </Directory>

</VirtualHost>

(以上路径来自我的WampDeveloper Pro设置,Xampp的路径略有不同)

NameVirtualHost *:80
NameVirtualHost *:443

<VirtualHost *:80>
    DocumentRoot "C:\xampp\htdocs"
    ServerName localhost
</VirtualHost>
<VirtualHost *:443>
    DocumentRoot "C:\Users\user_name\Documents\project_one"
    ServerName project_one.localhost
    SSLEngine on
    SSLCertificateFile "conf/ssl.crt/server.crt"
    SSLCertificateKeyFile "conf/ssl.key/server.key"
    <Directory "C:\Users\user_name\Documents\project_one">
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>
<VirtualHost *:80>
    DocumentRoot "C:\Users\user_name\Documents\project_two"
    ServerName project_two.localhost
    <Directory "C:\Users\user_name\Documents\project_two">
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

 类似资料:
  • 问题内容: 我确信这个问题已经被问过很多次了,但是我没有遇到任何问题。我在配置Zend框架的地方使用XAMPP。 XAMPP在 端口8081 上运行,因为 80 正在被某些Windows进程占用,因此我需要使用以下(或在较新版本中)以下代码配置的虚拟主机。 并使用来更新hosts文件,并尝试重新启动apache,但显示错误。 问题答案: 我看到两个错误: 固定版本: 一件事要提到: 您可以随时尝试

  • 我正在使用laravel创建我的网站。我正在使用xampp,但无法将网站连接到服务器。。我得到以下错误。有人能帮忙吗?顺便说一下,我正在使用mac。 找不到对象!在此服务器上找不到请求的URL。如果您手动输入URL,请检查拼写并重试。 如果您认为这是服务器错误,请联系网站管理员。 错误404localhostApache/2.4.41(Unix)OpenSSL/1.1.1c PHP/7.3.9mo

  • 我需要配置我的Tomcat 9服务器,将http重定向到https流量。 我尝试过: > < li> 对http端口使用连接器,并具有指向安全连接器的redirectPort属性。 在web.xml底部包括一个安全约束链接,它适用于其他不使用虚拟主机的Tomcat服务器 连接器 安全约束 服务器中的主机配置.xml < Li > https://example 2 . com-Works < Li

  • 我尝试使用XAMPP为一些本地站点设置虚拟主机。 我执行了以下步骤: 在“C:/xampp/apache/conf/extra/httpd vhosts.conf”中,我添加了: 和 如果我遵守: 一切正常:我看到我的目录和文件夹“htdocs”中的项目。 但是如果我遵守: 我希望在“.htdocs/fw/public”中看到我的“index.php”文件的结果。但我得到: 文件“C:/xampp

  • 问题内容: SSH进入Minikube VM的用户名/密码/密钥是什么? 问题答案: 您可以为此使用Minikube二进制文件。

  • 本文向大家介绍使用xampp搭建运行php虚拟主机的详细步骤,包括了使用xampp搭建运行php虚拟主机的详细步骤的使用技巧和注意事项,需要的朋友参考一下 最近,新装了xampp这么一个软件搭建自己的web开发环境,安装完毕自然要虚拟几个目录放自己的项目了,现将如何在xampp搭建的web服务器环境下新建虚拟主机的过程总结分享一下,大致过程分为三步,如下: 第一步: 用记事本打开C:/WINDOW