Nginxをインストールしています。これが私が従ったステップです:
/etc/nginx/nginx.confを編集します。編集後は次のようになります。
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log;
...
http {
...
server {
listen 80 default_server;
server_name my_domain_name.com;
root /root;
...
}
gpasswd -anginxルート
chmod g + x/root
(申し訳ありませんが、コードとして正しくフォーマットできませんでした)
service nginx restart
My_domain_name.comにアクセスしましたが、403エラーが発生しました。 /var/log/nginx/error.logコンテンツ:
"/root/index.html" is forbidden (13: Permission denied), client: 117.211.86.108, server: my_domain_name.com, request: "GET / HTTP/1.1", Host: "my_domain_name.com"
ああ!お願い SELinuxを無効にしないでください 。
まず—本当に/root
からファイルを提供する必要がありますか?これは実際にはrootユーザーのホームディレクトリであり、Webルートではありません。これは実際には非常に悪い考えです。代わりに、/var/www/html
または(私の好み)/srv/www
を使用してください。 do/root
を使用する場合は、sshキーやauthorized_keys
ファイル、データベースパスワードなどを公開していないことを確認してください。同様。それは本当に悪い考えです。
次に、selinuxを無効にするのではなく(この場合、危険なことをすることから保護します)、SELinuxを適切に構成する必要があります。 Fedoraでは、nginxがこれを他のWebサーバーと共有するように設計されたSELinuxポリシーであるため、ルートとして/srv/www/yoursite
を使用します。
chcon -R -t httpd_sys_content_t /srv/www/yoursite
それをする必要があります。
私はAmazonlinuxインスタンスを使用していましたが、
Sudo chmod o+x /home/ec2-user/
Sudo service nginx restart
セキュリティへの影響が何かわからない。