我正在尝试在 Magento 2.4.1 中使用商店视图设置 let's encrypt 证书,但我无法访问.well-known/acme-挑战目录。
在 Apache 2.4 虚拟主机中,我有:
<VirtualHost>
...
#==== LET'S ENCRYPT ====
<Directory "/usr/local/www/apache24/webroot/company/.well-known/acme-challenge">
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
...
<VirtualHost>
但是当我尝试访问 Magento storeview .well-known URL 时,出现了 404 未找到错误:
http://www.example.com/.well-known/acme-challenge/
我是否需要对 Magento2 进行任何更改才能访问以点命名的目录?
谢谢,
答案1
您需要.well-know
在 Magento 安装的 pub 文件夹中添加文件夹,并.htaccess
在您的案例中添加一个文件,因为您正在使用 Apache。
/usr/local/www/apache24/webroot/company/pub/.well-known/acme-challenge
答案2
你可以在 .htaccess 文件顶部添加 RewriteCond %{REQUEST_URI} !^/.well-known/ ,这是 Magento 自己的绕过方法
RewriteEngine on
RewriteCond %{REQUEST_URI} !^/pub/
RewriteCond %{REQUEST_URI} !^/setup/
RewriteCond %{REQUEST_URI} !^/update/
RewriteCond %{REQUEST_URI} !^/dev/
RewriteCond %{REQUEST_URI} !^/.well-known/
RewriteRule .* /pub/$0 [L]