gpt4 book ai didi

apache - Xampp Localhost 上的 SSL 在 Windows 上使用 VirtualHost 重定向到 Xampp 默认信息/本地主机页面

转载 作者:太空宇宙 更新时间:2023-11-03 14:22:03 26 4
gpt4 key购买 nike

我已经阅读了很多关于在 Xampp/Windows/Apache/VirtualHost 上配置 SSL 的帖子,并且认为我做对了,但是当我输入虚拟主机 url (q.localhost) 时,我总是会进入默认的本地主机Xampp 信息页面,内容为:'http://q.localhost/xampp/ ' 在网址栏中。

以下是我认为相关的各种文件中的内容:

Apache httpd.conf:

LoadModule ssl_module modules/mod_ssl.so

Apache httpd-vhosts.conf:

<Directory C:/vhost>
AllowOverride All
Require all granted
</Directory>

#this is the default address of XAMPP
<VirtualHost *:80>
DocumentRoot "C:/XAMPP/htdocs/"
ServerName localhost
</VirtualHost>

#this is the first vhost address in XAMPP
<VirtualHost *:443>
DocumentRoot "C:/XAMPP/htdocs/data/anycompany"
ServerName q.localhost
<Directory "C:/XAMPP/htdocs/data/anycompany">
AllowOverride All
Order Deny,Allow
Allow from all
</Directory>
SSLEngine On
SSLCertificateFile "C:/xampp/apache/conf/ssl.crt/server.crt"
SSLCertificateKeyFile "C:/xampp/apache/conf/ssl.key/server.key"
</VirtualHost>

###### THIS WORKS, BUT COMMENTED OUT REPLACED BY THE ABOVE ########
#this is the first vhost address in XAMPP
#<VirtualHost *:80>
# DocumentRoot "C:/XAMPP/htdocs/data/anycompany"
# ServerName q.localhost
#</VirtualHost>

Windows 主机文件:

127.0.0.1       localhost
127.0.0.1 q.localhost
127.0.0.1 test.localhost

Apache httpd-ssl.conf:

DocumentRoot "C:/xampp/htdocs/data/anycompany"
ServerName q.localhost:443
ServerAdmin admin@localhost.com

正在使用 Apache 版本 1.8.3。apache 错误日志中似乎没有任何错误消息。

最佳答案

已解决:

似乎上面的配置是正确的,但我没有意识到一件事,我必须包含一些进一步的配置才能使其工作。解释如下:

  1. 在 URL 窗口中键入“q.localhost”失败,并重定向到 Xampp 默认页面。必须在 url 之前包含 https://,因此输入“https://q.localhost”会显示正确的页面。但是,按要求点击网站上的其他各种链接也失败了,而且链接前面没有“https://...”。

  2. 为了纠正上述问题,我引用了这个article .建议将重定向添加到配置文件:\xampp\apache\conf\extra\httpd-xampp.conf。我添加了他建议的启用自动重定向的内容,而不必总是输入“https://...”

    <IfModule mod_rewrite.c>

        RewriteEngine On

    # Redirect /xampp folder to https
    RewriteCond %{HTTPS} !=on
    RewriteCond %{REQUEST_URI} xampp
    RewriteRule ^(.*) https://%{SERVER_NAME}$1 [R,L]

    # Redirect /phpMyAdmin folder to https
    RewriteCond %{HTTPS} !=on
    RewriteCond %{REQUEST_URI} phpmyadmin
    RewriteRule ^(.*) https://%{SERVER_NAME}$1 [R,L]

    # Redirect /security folder to https
    RewriteCond %{HTTPS} !=on
    RewriteCond %{REQUEST_URI} security
    RewriteRule ^(.*) https://%{SERVER_NAME}$1 [R,L]

    # Redirect /webalizer folder to https
    RewriteCond %{HTTPS} !=on
    RewriteCond %{REQUEST_URI} webalizer
    RewriteRule ^(.*) https://%{SERVER_NAME}$1 [R,L]

    # Redirect /folder_name folder to https
    RewriteCond %{HTTPS} !=on
    RewriteCond %{REQUEST_URI} folder_name
    RewriteRule ^(.*) https://%{SERVER_NAME}$1 [R,L]

    </IfModule>

关于apache - Xampp Localhost 上的 SSL 在 Windows 上使用 VirtualHost 重定向到 Xampp 默认信息/本地主机页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59657389/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com