これは Ubuntu に nginx を新しくインストールしたものなので、あまり失敗していません。チュートリアルのほとんどは DigitalOcean の Web サイトから引用したものです。サーバー ブロックを 2 つ設定しました (1 つ目はデフォルト、2 つ目は自分の Web サイト用)。しかし、何らかの問題により、セカンダリ サーバー ブロックにある自分の Web サイトを呼び出しても、デフォルト サーバー ブロックが読み込まれ続けます。自分の Web サイトは yoalfaaz.com で、それを読み込もうとすると、デフォルト サーバーからのファイルが読み込まれます。
さらに明確に言うと、 のファイルは/var/www/html
読み込まれ続けるので、代わりに のファイルを読み込みたいのです/var/www/yoalfaaz.com/html
。
sites-available/yoalfaaz.com
ファイルはここにあります
server {
listen 80 ;
listen [::]:80 ;
root /var/www/yoalfaaz.com/html;
# Add index.php to the list if you are using PHP
index index.php index.html index.htm index.nginx-debian.html;
server_name yoalfaaz.com www.yoalfaaz.com;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
そして、error.logメッセージは次のようになります
2018/02/18 06:47:02 [error] 28275#28275: *1656 directory index of "/var/www/html/" is forbidden, client: 47.89.22.200, server: [IP for server], request: "GET / HTTP/1.0", host: "www.yoalfaaz.com", referrer: "https://www.yoalfaaz.com"
私もそのコマンドを使用しましたnginx -t
が、すべて問題ありませんでした。ここで何が問題なのか教えていただけますか?
答え1
内のファイルへのシンボリックリンクの作成に問題がありました。そのため、コマンドからsites-enabled
内のファイルを削除しました。sites-enabled
sudo rm /etc/nginx/sites-enabled/yoalfaaz.com
次に、コマンドを使用してシンボリックリンクを再度作成しました。
sudo ln -s /etc/nginx/sites-available/yoalfaaz.com /etc/nginx/sites-enabled/
そしてすべてが再び機能し始めました。