当使用HTTPS时,您没有访问该服务器上/的权限


You don't have permission to access / on this server when using HTTPS

我使用wampserver作为我的HTTP主机。我配置了ssl,允许HTTPS连接到我的网站。我遵循了这个指导:[http://forum.wampserver.com/read.php?2,32986]。我用openssl自己生成了CRT和密钥,但我没有将CSR发送给CA(我认为除了浏览器会报告"不安全"报告外,这无关紧要)。

服务正常启动。我可以通过http://localhost/http://162.105.250.110/访问我的网站。但是当我尝试通过HTTPS访问该网站(通过URL https://localhost/https://162.105.250.110/)时,我得到了一个403错误,页面显示"您没有权限访问/在此服务器上。"。我该怎么处理呢?


这里是我的httpd配置文件。(注释行被删除以保存单词。)

httpd.conf文件:

ServerSignature On
ServerTokens Full

Define APACHE24 Apache2.4
Define VERSION_APACHE 2.4.23
Define INSTALL_DIR c:/wamp64
Define APACHE_DIR ${INSTALL_DIR}/bin/apache/apache${VERSION_APACHE}
ServerRoot "${APACHE_DIR}"

Listen 0.0.0.0:80
Listen [::0]:80
LoadModule access_compat_module modules/mod_access_compat.so
LoadModule actions_module modules/mod_actions.so
LoadModule alias_module modules/mod_alias.so
LoadModule allowmethods_module modules/mod_allowmethods.so
LoadModule asis_module modules/mod_asis.so
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule auth_digest_module modules/mod_auth_digest.so
LoadModule authn_core_module modules/mod_authn_core.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authz_core_module modules/mod_authz_core.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule cache_module modules/mod_cache.so
LoadModule cache_disk_module modules/mod_cache_disk.so
LoadModule cgi_module modules/mod_cgi.so
LoadModule dir_module modules/mod_dir.so
LoadModule env_module modules/mod_env.so
LoadModule file_cache_module modules/mod_file_cache.so
LoadModule include_module modules/mod_include.so
LoadModule isapi_module modules/mod_isapi.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule mime_module modules/mod_mime.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule ssl_module modules/mod_ssl.so
LoadModule userdir_module modules/mod_userdir.so
LoadModule vhost_alias_module modules/mod_vhost_alias.so
LoadModule php7_module "${INSTALL_DIR}/bin/php/php7.0.10/php7apache2_4.dll"
<IfModule unixd_module>
User daemon
Group daemon
</IfModule>

ServerAdmin wampserver@wampserver.invalid
ServerName localhost:80
<Directory />
    AllowOverride none
    Require all denied
</Directory>
HostnameLookups Off
DocumentRoot "${INSTALL_DIR}/www"
<Directory "${INSTALL_DIR}/www/">
    Options +Indexes +FollowSymLinks +Multiviews
    AllowOverride all

    Require local
</Directory>
<IfModule dir_module>
    DirectoryIndex index.php index.php3 index.html index.htm
</IfModule>
<Files ".ht*">
    Require all denied
</Files>
ErrorLog "${INSTALL_DIR}/logs/apache_error.log"
LogLevel warn
<IfModule log_config_module>
    LogFormat "%h %l %u %t '"%r'" %>s %b '"%{Referer}i'" '"%{User-Agent}i'"" combined
    LogFormat "%h %l %u %t '"%r'" %>s %b" common
    <IfModule logio_module>
      LogFormat "%h %l %u %t '"%r'" %>s %b '"%{Referer}i'" '"%{User-Agent}i'" %I %O" combinedio
    </IfModule>
    CustomLog "${INSTALL_DIR}/logs/access.log" common
</IfModule>
<IfModule alias_module>

    ScriptAlias /cgi-bin/ "${INSTALL_DIR}/cgi-bin/"
</IfModule>
<IfModule cgid_module>
</IfModule>
<Directory "${INSTALL_DIR}/cgi-bin">
    AllowOverride None
    Options None
    Require all granted
</Directory>
<IfModule mime_module>
    TypesConfig conf/mime.types
    AddEncoding x-compress .Z
    AddEncoding x-gzip .gz .tgz
    AddType application/x-compress .Z
    AddType application/x-gzip .gz .tgz
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php .php3
</IfModule>
EnableSendfile off
AcceptFilter http none
AcceptFilter https none
Include conf/extra/httpd-autoindex.conf
Include conf/extra/httpd-vhosts.conf
<IfModule proxy_html_module>
Include conf/extra/proxy-html.conf
</IfModule>
<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>
Include conf/extra/httpd-ssl.conf
Include "${INSTALL_DIR}/alias/*"

httpd-ssl.conf文件:

Listen 443
SSLCipherSuite HIGH:MEDIUM:!MD5:!RC4
SSLProxyCipherSuite HIGH:MEDIUM:!MD5:!RC4
SSLHonorCipherOrder on 
SSLProtocol all -SSLv3
SSLProxyProtocol all -SSLv3
SSLPassPhraseDialog  builtin
<VirtualHost _default_:443>
DocumentRoot "c:/wamp64/www/"
ServerName 162.105.250.110:443
ServerAdmin admin@example.com
ErrorLog "c:/wamp64/bin/apache/apache2.4.23/logs/error.log"
TransferLog "c:/wamp64/bin/apache/apache2.4.23/logs/access.log"
SSLEngine on
SSLCertificateFile "c:/wamp64/bin/apache/apache2.4.23/conf/ssl.crt/server.crt"
SSLCertificateKeyFile "c:/wamp64/bin/apache/apache2.4.23/conf/ssl.key/server.key"
<FilesMatch "'.(cgi|shtml|phtml|php)$">
    SSLOptions +StdEnvVars
</FilesMatch>
<Directory "c:/wamp64/www/">
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Require all granted
</Directory>
BrowserMatch "MSIE [2-5]" '
         nokeepalive ssl-unclean-shutdown '
         downgrade-1.0 force-response-1.0
CustomLog "c:/wamp64/bin/apache/apache2.4.23/logs/ssl_request.log" '
          "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x '"%r'" %b"
</VirtualHost>                                  

您的浏览器还会抱怨证书,因为它不是由已知的CA签名的,这对您的个人服务器来说没什么大不了的,而且由于您得到403,这意味着SSL已经正确协商。

关于403错误。您将2.2(命令)指令与2.4指令(要求)指令混合在一起,这将导致问题。

试试这个:

<Directory "c:/wamp64/www/">
   Options Indexes FollowSymLinks MultiViews
   Require all granted
   AllowOverride none
</Directory>

一旦您注意到您可以访问documentroot,请添加您可能需要的任何其他内容。

指出:

  • 我将AllowOverride设置为none,因为:1º您可以访问自己的服务器,因此您不需要它。2 .它可能会覆盖你在虚拟主机中的配置,使用你没有粘贴的。htaccess文件中的配置。

  • 你应该卸载mod_access_compat并且只使用2.4指令,以避免错误地与2.2指令混在一起。

同样的问题发生在我身上,即使没有HTTPS我花了几个小时和它斗争,它只有在修改

后才能工作。

httpd-vhosts.conf位于wamp64'bin'apache'apache2.4.23'conf'extra

<VirtualHost *:80>
    ServerName localhost
    DocumentRoot d:/wamp64/www
    <Directory  "d:/wamp64/www/">
        Options +Indexes +Includes +FollowSymLinks +MultiViews
        AllowOverride All
        Order Deny,Allow
        Allow from all
        Require all granted
    </Directory>
</VirtualHost>

你也可以读这个https://stackoverflow.com/a/26252312/3938407我仔细地照着做了,它成功了