我尝试用全部的设置来写所有内容。
我有一个装有 wamp 和 Windows 10 的本地主机,我正尝试从网络外的其他计算机访问它。由于我在访问代码 true localhost virtual 时遇到一些问题,因此我创建了一个新的虚拟主机。
1,我在根目录中创建一个名为 example:folder-1 的新文件夹,并将所有文件添加到其中。
http-vhost.conf
<VirtualHost *:80>
ServerName localhost
ServerAlias localhost
DocumentRoot "${INSTALL_DIR}/www"
<Directory "${INSTALL_DIR}/www/">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
# xxxx.dyndns.org
<VirtualHost *:80>
ServerName xxxx.dyndns.org
ServerAlias xxxx.dyndns.org
DocumentRoot "${INSTALL_DIR}/www/folder-1"
<Directory "${INSTALL_DIR}/www/folder-1">
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
在我的主机中我将 IP 添加到虚拟主机
主办方
127.0.0.1 localhost
::1 localhost
127.0.0.1 xxxx.dyndns.org
::1 xxxx.dyndns.org
因为我需要 https,所以我在互联网上搜索答案并找到将 https 添加到 wamp 的教程。 https://www.proy.info/how-to-enable-localhost-https-on-wamp-server/
在我的httpd-ssl.conf我补充一下:
<VirtualHost _default_:443>
DocumentRoot "C:/wamp64/www/folder-1"
ServerName https://xxxx.dyndns.org:443
ServerAdmin [email protected]
ErrorLog "C:/wamp64/bin/apache/apache2.4.46/logs/error.log"
TransferLog "C:/wamp64/bin/apache/apache2.4.46/logs/access.log"
SSLCertificateFile "C:/wamp64/bin/apache/apache2.4.46/conf/key/certificate.crt"
SSLCertificateKeyFile "C:/wamp64/bin/apache/apache2.4.46/conf/key/private.key"
</VirtualHost>
在我的常规httpd配置文件我有这个设置。
ServerName localhost:80
<Directory />
AllowOverride none
Require all denied
</Directory>
DocumentRoot "${INSTALL_DIR}/www"
<Directory "${INSTALL_DIR}/www/">
下一步是在 Windows Defender 中入站,我添加了 2 个入站。http 端口为 80,https 端口为 443
我使用的ip是:
192.168.10.xxx 是它给我的路由器 IP。85.226.170.xxx 是我的公共 IP。
当我在我的网络中访问时一切正常,但是当我在网络外尝试时我只得到:
禁止您无权访问此资源。
我是不是忘记了什么?
更新: