【发布时间】:2025-12-09 00:00:02
【问题描述】:
我的 nginx 的 .conf 文件中有以下配置。我对配置 Web 服务器很陌生,所以我遇到了一些问题。现在,如果我理解正确,第一个块会将所有内容重定向到 https。第二个块是 example.com 的实际服务器配置,而第三个块将 www.example.com 重定向到没有 www 的第二个服务器块。标记。
现在有一个例外,我想在不使用 https 的情况下访问服务器上的文件夹。因此,如果我键入http://www.example.com/folder/page.php,则该站点不应重定向到 https,也不应重定向到没有 www 的普通 example.com。我尝试添加
location /folder/page.php
{
http://www.example.com/folder/page.php
}
到所有服务器块,但实际上它们都没有成功。
非常感谢有关如何解决此问题的任何建议。提前致谢!
server
{
listen 80;
listen [::]:80;
return 301 https://$host$request_uri;
}
server
{
listen 443 ssl;
listen [::]:443 ssl;
server_name example.com;
root /data/web/example.com/web;
location /phpmyadmin
{
root /usr/share;
location ~ \.php$
{
include php.conf;
}
location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
root /usr/share/;
}
}
location /webftp
{
root /data/web;
location ~ \.php$
{
include php.conf;
}
}
}
server
{
listen 443 ssl;
listen [::]:443 ssl;
server_name www.example.com;
return 301 $scheme://example.com$request_uri;
}
【问题讨论】: