gpt4 book ai didi

nginx - 为什么 Nginx 会从默认目录而不是新目录正确地提供文件?

转载 作者:行者123 更新时间:2023-12-04 19:42:58 26 4
gpt4 key购买 nike

安装

操作系统 : CentOS 7.4

服务器 : Nginx 1.12.2

问题:我的 nginx 安装从默认目录提供文件没有问题,/usr/share/nginx/html .不幸的是,当我使用我创建的新文件夹 /www/html 时出现 403 错误.我应该寻找什么?

尽管所有者不同,但我对这两个文件夹的权限相同。

原始默认文件夹
drwxr-xr-x. 13 root root 155 Jan 8 09:25 usr
新建默认文件夹
drwxr-xr-x. 3 first first 18 Jan 15 10:45 www
我正在使用精简版 server.conf下面的文件,它可以正常工作。

events {}

http {

server {
listen 80;
server_name mydomain.com;
root /usr/share/nginx/html;
}

}

但是,当我更改 server.conf使用此目录 /www/html我收到 403 错误。

提前感谢您的帮助!我是个菜鸟,甚至不确定在文件权限之外的地方。

最佳答案

我遇到了同样的问题。

解决方案。您必须创建 test.example.com.conf 里面 conf.d 文件夹

sudo nano /etc/nginx/conf.d/test.example.com.conf

和文件:
server {
listen 80;
#listen *:80;
server_name test.example.com;

# note that these lines are originally from the "location /" block
root /var/www/test.example.com/;
index index.html index.htm index.php;

location / {
try_files $uri $uri/ /index.php?$args;
}

# Remove trailing slash to please routing system.
if (!-d $request_filename) {
rewrite ^/(.+)/$ /$1 permanent;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}

location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}

重启服务器 systemctl restart nginx.service

关于nginx - 为什么 Nginx 会从默认目录而不是新目录正确地提供文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48268910/

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