getpwnam ("www") /etc/nginx/nginx.conf এ ব্যর্থ হয়েছে


24

আমি আমার উবুন্টু 12.04 বাক্সে nginx.conf নমুনাটি অনুলিপি করেছি (অন্যান্য কনফারেন্স ফাইলগুলি কোথায় রাখা উচিত তা আমি জানি না I'm আমি একটি নগ্নেক্স নুব)। আমি যখন এনজিএনএক্স শুরু করার চেষ্টা করি তখন আমি নিম্নলিখিত ত্রুটিটি পাই:

abe-lens-laptop@abe:/etc$ sudo service nginx start
Starting nginx: nginx: [emerg] getpwnam("www") failed in /etc/nginx/nginx.conf:1
nginx: configuration file /etc/nginx/nginx.conf test failed

এই সমস্যার মানে কি? আমি কীভাবে এটি ঠিক করতে পারি? আমি এই পোস্টটি পেয়েছি তবে আমার ব্যবহারকারী ইতিমধ্যে www www এ সেট আছে (আপনি যদি লিঙ্কযুক্ত ফাইলে দেখেন) আমি এনজিআইএনএক্স ব্যবহারকারীকে কীভাবে পরিবর্তন করব?


Nginx.config- এর লিঙ্কটি নষ্ট হয়েছে
জোশ নোই

উত্তর:


33

আপনি আপনার কনফিগারেশনে উল্লিখিত ব্যবহারকারীর wwwঅস্তিত্ব নেই। হয় ব্যবহারকারী তৈরি করুন, বা বিদ্যমান ব্যবহারকারী বেছে নিন।


3
সিনট্যাক্সটি হ'ল:
ইউরোডড

8

আপনার অন্যান্য বিকল্পটি (যদি আপনি কোনও নতুন ব্যবহারকারী তৈরি করতে না চান) হ'ল এনগিনএক্স.কনফের সাথে ব্যবহারকারী ক্ষেত্রটি প্রতিস্থাপন করুন:

user nobody;

3

wwwব্যবহারকারী তৈরি করুন । উবুন্টুতে এটি নিম্নলিখিত কমান্ড এবং পতাকা ব্যবহার করে করা উচিত:

sudo adduser --system --no-create-home --shell /bin/false --group --disabled-login www

0

মাইকেল হ্যাম্পটনের উত্তর সঠিক হলেও এটি উত্তরের অংশ মাত্র। আরও একটি সম্পূর্ণ সংস্করণ হবে:

  1. ব্যবহারকারীর উপস্থিতি আছে কিনা তা পরীক্ষা করে দেখুন
  2. আপনি ডকারের ধারক শুরু করতে কোন ব্যবহারকারী ব্যবহার করেন তাও পরীক্ষা করে দেখুন

যদি তুমি করো:

docker -u 0 ....

তারপরে একই বার্তাটি উপস্থিত হবে যদিও ব্যবহারকারী হোস্ট সিস্টেমে উপস্থিত রয়েছে। ইউজার এনজিনেক্সের আইডিতে -u এর পিছনে মান পরিবর্তন করা এই সমস্যার সমাধান করে।


0

nginx সংস্করণ: nginx / 1.13.9 gcc 5.4.0 20160609 দ্বারা নির্মিত (উবুন্টু 5.4.0-6ubuntu1 ~ 16.04.9) ওপেনএসএসএল 1.1.0g 2 নভেম্বর 2017 দিয়ে নির্মিত

শুধু ব্যবহার

user  nobody nogroup;

0

এটি হ'ল কমান্ড যা আমার জন্য "বৈজ্ঞানিক লিনাক্স" কাজ করে

adduser  --no-create-home  --system  --user-group --shell /bin/false   www

অথবা পরিবর্তে ব্যবহারকারীর নাম www-dataব্যবহার করুন

adduser  --no-create-home  --system  --user-group --shell /bin/false   www-data  

-1

আমার একই সমস্যা ছিল ... আমি "এনগিনেক্স" ব্যবহারকারী বেছে নিয়েছি এবং এটি বিদ্যমান নেই। আমি এটি এনজিআইএনএক্স একটি বিদ্যমানটিকে বেছে নিয়ে পুনর্গঠন এবং পুনরায় সংশোধন করার সমাধান করেছি।

./configure --prefix = / opt / nginx --user = myUser --group = myUsergroup

এখন সব ঠিক আছে ...


সংকলন বিকল্পগুলি কিছু নির্দেশাবলীর জন্য ডিফল্ট মান সেট করার একটি উপায় । এগুলি পরিবর্তন করতে অবশ্যই এনজিনেক্সগুলি আবার সংকলন করার প্রয়োজন নেই: এই ডিফল্ট মানগুলি কনফিগারেশন ফাইলগুলি দ্বারা ওভারলোড করা হয়।
জাভিয়ের লুকাস

অবশ্যই, তবে আমরা প্রথম বারের মতলব / সংকলনের কথা বলছি ...
জর্জি লুইস গুয়্যাকারন

ঠিক কোথায় পড়েছেন? বিটিডব্লিউ সংকলনের সাথে প্রথম কনফিগারেশনটির কোনও সম্পর্ক নেই।
জাভিয়ের লুকাস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.