403 Forbidden Nginx

问题描述 投票:0回答:1

我使用nginx作为web服务器来运行html内容。当我将index.html复制到/ usr / share / nginx目的地时,它正在正常加载网页。但我的项目位于/var/www/example.com目录中。当我将该路径放入nginx.conf时,它会收到错误403 Forbidden。

下面我附上了nginx.conf。

nginx

我是新手,任何建议都会非常有用。

user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;

# Load dynamic modules. See /usr/share/nginx/README.dynamic.
include /usr/share/nginx/modules/*.conf;

events {
worker_connections 1024;
}

http {
log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                  '$status $body_bytes_sent "$http_referer" '
                  '"$http_user_agent" "$http_x_forwarded_for"';

access_log  /var/log/nginx/access.log  main;

sendfile            on;
tcp_nopush          on;
tcp_nodelay         on;
keepalive_timeout   65;
types_hash_max_size 2048;

include             /etc/nginx/mime.types;
default_type        application/octet-stream;

# Load modular configuration files from the /etc/nginx/conf.d directory.
# See http://nginx.org/en/docs/ngx_core_module.html#include
# for more information.
include /etc/nginx/conf.d/*.conf;

server {
    listen       80 default_server;`enter code here`
    listen       [::]:80 default_server;
    server_name  _;
    root         /var/www/example.com;
    index         index.html;



    # Load configuration files for the default server block.
    include /etc/nginx/default.d/*.conf;

    location / {
    }

    error_page 404 /404.html;
        location = /40x.html {
    }

    error_page 500 502 503 504 /50x.html;
        location = /50x.html {
# Settings for a TLS enabled server.
#
#    server {
#        listen       443 ssl http2 default_server;
#        listen       [::]:443 ssl http2 default_server;
#        server_name  _;
#        root         /usr/share/nginx/html;
#
#        ssl_certificate "/etc/pki/nginx/server.crt";
#        ssl_certificate_key "/etc/pki/nginx/private/server.key";
#        ssl_session_cache shared:SSL:1m;
#        ssl_session_timeout  10m;
#        ssl_ciphers HIGH:!aNULL:!MD5;
#        ssl_prefer_server_ciphers on;
#
#        # Load configuration files for the default server block.
#        include /etc/nginx/default.d/*.conf;
#
#        location / {
#        }
#
#        error_page 404 /404.html;
#            location = /40x.html {
#        }
#
#        error_page 500 502 503 504 /50x.html;
#            location = /50x.html {
#        }
#    }
html nginx
1个回答
0
投票

文件权限不正确是导致“403 Forbidden”错误的另一个原因。建议将目录的755和文件的644标准设置用于NGINX。 NGINX用户还需要是文件的所有者。

识别NGINX用户首先,您需要确定运行NGINX的用户。为此,请使用以下命令:

ps -ef | grep nginx

检查第一列,查看任何NGINX工作进程:

在此示例中,NGINX工作进程作为用户nginx运行。

设置文件所有权转到网站文档根目录上方的目录。例如,如果您的网站的文档根目录是/usr/share/nginx/example.com,请使用以下命令转至/ usr / share / nginx:

cd / usr / share / nginx

使用以下命令将所有文件的所有权从此点更改为nginx用户:

sudo chown -R nginx:nginx *

使用以下命令将此位置的每个目录的权限设置为755:

sudo chmod 755 [目录名] mixed例如,要设置example.com目录的权限,命令为:

sudo chmod 755 example.commixed然后转到web文档根目录:

cd example.commixed使用以下命令更改此目录中所有文件的权限:

sudo chmod 644 *

© www.soinside.com 2019 - 2024. All rights reserved.