কোনও অ্যাপ্লিকেশন এনক্রিপশন কী নির্দিষ্ট করা হয়নি


255

আমি লারাভেলে নতুন এবং আমি কারিগর কমান্ডটি ব্যবহার করার চেষ্টা করছি ...

php artisan serve

এটি প্রদর্শিত হয় ...

লারাভেল ডেভলপমেন্ট সার্ভার শুরু হয়েছে: http://127.0.0.1:8000

যাইহোক, এটি স্বয়ংক্রিয়ভাবে চালু হবে না এবং যখন আমি ম্যানুয়ালি http://127.0.0.1:8000 প্রবেশ করি এটি এই ত্রুটিটি দেখায়:

রানটাইমএক্সেপশন কোনও অ্যাপ্লিকেশন এনক্রিপশন কী নির্দিষ্ট করা হয়নি।

কোন ধারনা? আমি লারাভেল ফ্রেমওয়ার্ক 5.5-dev ব্যবহার করছি।


অথবা আপনার .env ফাইল চাহিদা সুত্র পরিবর্তন করা যদি: stackoverflow.com/questions/36276767/...
Nameishi

2
নীচের উত্তরগুলি সঠিক: তবে, আপনি যদি প্রথমে "পিএইচপি আর্টিজান পরিবেশন" চালান এবং একটি সক্রিয় ওয়েব সার্ভার সেশন রাখেন আপনার পরে পরিবর্তনটি কার্যকর হওয়ার জন্য আপনাকে সার্ভারটি পুনরায় চালু করতে হবে (টার্মিনালে নিয়ন্ত্রণ-সি) থামাতে হবে you আপনার .env ফাইলে কীটি যুক্ত করুন।
ক্রিস অ্যাডামস

উত্তর:


437

এনক্রিপশন থেকে - লারাভেল - ওয়েব কারিগরদের জন্য পিএইচপি ফ্রেমওয়ার্ক :

"লারাভেলের এনক্রিপশন ব্যবহার করার আগে আপনাকে আপনার কনফিগারেশন / অ্যাপ.পিএইচপি কনফিগারেশন ফাইলটিতে একটি মূল বিকল্পটি সেট করতে হবে this আপনার php artisan key:generateএই কী তৈরি করতে কমান্ডটি ব্যবহার করা উচিত "

আমি গুগল.কম এ এই জটিল ইন্টারনেট কোয়েরিটি ব্যবহার করে দেখেছি:

"লারাভেল অ্যাডক্রিপশন কী" (হ্যাঁ, এটি টাইপোর সাথেও কাজ করেছিল!)


22
আমি পুরো ত্রুটিটি গুগল করেছিলাম এবং কিছুই স্পষ্ট হয় নি, সবেমাত্র এনক্রিপশন কীটি গুগল করে খুঁজে পেয়েছি। বোকা মনে হয়। ধন্যবাদ। এখানে আসার যে কারও জন্য কেবল চালান:php artisan key:generate
কার্লোস এফ

আফসোস তাই আপনি কি পিএইচপি আর্টিসান কী রাখছেন: টার্মিনালে উত্পন্ন? কারণ আমি একটি ত্রুটিযুক্ত
ধারণা

1
অন্য যে কেউ আমার ইস্যুটি এটিকে টার্মিনালে সিপি। এন.ভি.স্যাম্পেল। এনএইচ পিএইচপি কারিগর কীতে উত্পন্ন করে: জেনারেট
নামিশি

5
php artisan key:generateএমনকি আমার জন্য কাজ করে না। আমাকে একই ত্রুটি দেয় কোনও অ্যাপ্লিকেশন এনক্রিপশন কী নির্দিষ্ট করা হয়নি , দয়া করে কোনও সমাধান করুন?
ওনিয়া ড্যানিয়েল

7
এটি আমার পক্ষে কাজ করেছে, তবে কাজ করার জন্য আমাকে প্রথমে .env.example ফাইলটির নতুন নামকরণ করতে হয়েছিল, অন্যথায় আমি ".env: এ জাতীয় কোনও ফাইল" ত্রুটি পাচ্ছি না।
ওয়েবোমাটিক

129

আমার ক্ষেত্রে, আমার ক্যাশেড কনফিগারেশন ফাইলগুলি পুনরায় সেট করতে হবে:

php artisan key:generate
php artisan config:cache

5
আমি ক্যাশে সাফ করতে ভুলে যাওয়ার পরে আমি সর্বদা এই উত্তরটি দেখতে আসি
বিজয়ন

3
এটি সমস্ত উত্তর থেকে অনুপস্থিত ছিল। অনেক অনেক ধন্যবাদ! :)
আমান আলম

1
কিসের php artisan config:cacheজন্য? কেন এটি দরকারী?
প্যাথ্রোস

2
@ পাঠ্রস ক্যাশেড কনফিগারেশন ফাইলগুলি তৈরি / পুনরুত্পাদন করবেন
লিওনিড দাশকো

1
এটি ছাড়াও প্রথমে নিশ্চিত হয়ে নিন যে আপনার " .env" ফাইলটিতে কমপক্ষে ফাঁকা কী-বিকল্প রয়েছে, যেমন:APP_KEY=
শীর্ষ-মাস্টার

54

আপনার প্রকল্পের মূল ফোল্ডারে কমান্ড প্রম্পটটি খুলুন এবং কমান্ডের নীচে রান করুন:

php artisan key:generate

এটি আপনার আবেদনের জন্য অ্যাপ্লিকেশন কী তৈরি করবে।

আপনি উত্পন্ন অ্যাপ্লিকেশন কী (APP_KEY) .envফাইলটিতে খুঁজে পেতে পারেন ।


23

কেবল এই আদেশটি চালান:

php artisan key:generate

1
হ্যাঁ তবে অনেক হোস্টিং সার্ভারের কমান্ড লাইন অ্যাক্সেস নেই তবে কীভাবে করবেন?
ধীরাজ

2
একটি সংখ্যাগরিষ্ঠ সমর্থন ssh সংযোগ। আপনার টার্মিনাল থেকে চালান ssh yourusername @ server_ip
ডিজে

21
  1. এতে অনুলিপি .env.exampleকরুন .env:

    cp -a .env.example .env

  2. একটি কী তৈরি করুন:

    php artisan key:generate

  3. তবেই চালান:

    php artisan serve


উপস। এই ছিল সমালোচনা পদক্ষেপ! একটি নতুন লারাভেল প্রকল্পে একটি .env ফাইলের প্রয়োজন বা কিছুই কাজ করবে না। ধন্যবাদ, আদম
এরিক এল।

16

cp .env.example .env.env ফাইল উপস্থিত না থাকলে। php artisan key:generateকমান্ড আমার জন্য কাজ করে। এটি এনক্রিপশন কী উত্পন্ন করে


4
php artisan config:cacheউপরের পদক্ষেপের পরে কমান্ড ব্যবহার করে ক্যাশে সাফ করুন ।
সব্যসাচী ঘোষ

ক্যাশে ক্লিয়ারিং বেশিরভাগ উত্পাদন / পর্যায়ক্রমে প্রয়োজন তবে বিকাশের সময় নয়। (যদি না আপনি উন্নয়নের সময় আপনার মতামত ক্যাশে করতে চান))
হত্যাকারী

14

আমাকে আসলে আমার প্রকল্পে একটি .env ফাইল যুক্ত করতে হয়েছিল এবং তারপরে .env.example এর সামগ্রীগুলি অনুলিপি করতে হয়েছিল যাতে key:generateকাজ করতে পারে। আমি প্রকল্পটি শুরু করার সময় কেন একটি .env ফাইল তৈরি করা হয়নি তা নিশ্চিত নয়।


1
কিভাবে এটি আপনার Laravel ইনস্টল উপর নির্ভর করে পারে ... " একটি তাজা Laravel ইনস্টলেশন ক্ষেত্রে, আপনার অ্যাপ্লিকেশনটি একটি থাকতে হবে রুট ডিরেক্টরিটি .env.exampleফাইল। আপনি রচয়িতা মাধ্যমে Laravel ইনস্টল করা হলে, এই ফাইলটি স্বয়ংক্রিয়ভাবে পুনরায় নাম দেওয়া হবে .env। অন্যথায়, আপনি নামান্তর উচিত ম্যানুয়ালি দায়ের। "- #Environment কনফিগারেশন
Sᴀᴍ Onᴇᴌᴀ

এছাড়াও, আপনি যদি এমন একটি রেপো থেকে প্রকল্পটি ক্লোন করে রেখেছিলেন যেখানে .env ফাইলটি সম্ভবত .gitignore এ থাকতে পারে, তবে আপনি এটি তৈরির জন্যও দরকার। লারাভেল ডক্স থেকে: 'আপনার .env ফাইলটি আপনার অ্যাপ্লিকেশনটির উত্স নিয়ন্ত্রণের জন্য প্রতিশ্রুতিবদ্ধ হওয়া উচিত নয়, যেহেতু আপনার অ্যাপ্লিকেশন ব্যবহার করে প্রতিটি বিকাশকারী / সার্ভারের জন্য আলাদা পরিবেশের কনফিগারেশন প্রয়োজন হতে পারে'
সামি এল মামারি

আমি আরও দেখতে পেলাম যে আপনি যদি এটি ক্লাউড থেকে ডাউনলোড করেন (আমি উইন্ডোজ ব্যবহার করছি) অর্থাৎ গুগল-ড্রাইভ, আকাশ ড্রাইভ ইত্যাদি .env, .env.example ফাইলগুলির নাম _env, _env.example ইত্যাদি etc. ক্ষেত্রে আমি সেই অনুযায়ী ফাইলগুলির নাম পরিবর্তন করে তারপরে কেবল 'পিএইচপি আর্টিসান কী: উত্পন্ন' দৌড়ান।
টিমোথি ক্রুগার

11
php artisan key:generate
php artisan config:cache

আমার জন্য কাজ করেছে, তবে এটি উইন্ডোজের একটি কমান্ড প্রম্পটে করা উচিত।

পিএইচপিএসটারমে টার্মিনালের ভিতরে এটি কাজ করে না।


11

লারাভেল অ্যাপ্লিকেশনটিতে কাজ করার সময় আপনি যে সাধারণ সমস্যাটি অনুভব করতে পারেন তা ব্যতিক্রম:

রানটাইমএক্সেপশন কোনও অ্যাপ্লিকেশন এনক্রিপশন কী নির্দিষ্ট করা হয়নি।

আপনি যখন বিদ্যমান লারাভেল অ্যাপ্লিকেশনটি নীচে টানেন তখন আপনি প্রায়শই এটির মধ্যে চলে যাবেন যেখানে আপনি .env.exampleফাইলটি অনুলিপি করেছেন .envতবে APP_KEYভেরিয়েবলের জন্য কোনও মান সেট করেন না ।

কমান্ড লাইনে, কী তৈরি করার জন্য নিম্নলিখিত আর্টিশান কমান্ডটি জারি করুন:

php artisan key:generate

এটি এর জন্য একটি এলোমেলো কী উত্পন্ন করবে APP_KEY, .envসম্পাদনা সমাপ্তির পরে আপনার টার্মিনালে পরিষ্কার আদেশের জন্য এই কমান্ডটি প্রবেশ করুন:php artisan config:cache

এছাড়াও, আপনি যদি পিএইচপি-র ডিফল্ট ওয়েব সার্ভার ব্যবহার করে থাকেন (উদা। php artisan serve) আপনার ফাইলের মান পরিবর্তন করে সার্ভারটি পুনরায় চালু করতে হবে .env। এখন আপনি এই ত্রুটি বার্তাটি দেখতে পাবেন না।


9

আপনার প্রকল্পের মূল ফোল্ডারে ওপেন কমান্ড প্রম্পট এবং রান করুন

php artisan key:generate

তারপর

php artisan config:cache

এবং তারপর

কী-মান থাকার পরেও যদি আপনি একই ত্রুটি পেয়ে থাকেন তবে কেবল .env ফাইল থেকে APP_KEY মানটি অনুলিপি করুন এবং এটি 'কী' => 'আপনার কী' দিয়ে কনফিগারেশন / অ্যাপ.এফপিতে পেস্ট করুন,

এবং তারপর আবার চালান

php artisan config:cache

7

এই পদক্ষেপগুলি অনুসরণ করুন:

  1. php artisan key:generate
  2. php artisan config:cache
  3. php artisan serve

এমনকি .env ফাইলে কী তৈরি করার পরেও আমি ত্রুটি পাচ্ছিলাম। আমি যখন "পিএইচপি আর্টিসান কনফিগারেশন: ক্যাশে" চালিয়েছিলাম তখন এটি ক্যাশে সাফ করে এবং তারপরে কেবল আমার সমস্যার সমাধান হয়। অনেক ধন্যবাদ.
পঙ্কজ

6

ঠিক আছে, আমি অন্য নির্দেশ লিখব, কারণ এখানে স্পষ্ট উত্তরটি খুঁজে পেল না। সুতরাং আপনি যদি এই জাতীয় সমস্যার মুখোমুখি হন তবে এটি অনুসরণ করুন:

  1. নাম পরিবর্তন করুন বা কপি / নামান্তর .env.example আপনার প্রকল্পের রুট ফাইল .env

আপনার কেবল খালি .env ফাইল তৈরি করা উচিত নয় , তবে এটি .env.example এর সামগ্রী সহ পূরণ করুন ।

  1. টার্মিনালে প্রোজেক্ট রুট ডিরেক্টরিতে যান (পাবলিক ফোল্ডার নয়) এবং রান করুন

পিএইচপি কারিগর কী: উত্পন্ন

  1. সবকিছু ঠিকঠাক থাকলে, টার্মিনালের প্রতিক্রিয়াটি দেখতে এ জাতীয় হওয়া উচিত

অ্যাপ্লিকেশন কী [বেস64: wbvPP9pBOwifnwu84BeKAVzmwM4TLvcVFowLcPAi6nA =] সফলভাবে সেট করা হয়েছে।

  1. এখন কেবল কীটি অনুলিপি করুন এবং এটি আপনার .env এ আটকান ফাইলটিতে এর মান হিসাবে আটকান। ফলাফলের লাইনটি দেখতে এমন হওয়া উচিত:

APP_KEY = করুন Base64-: wbvPP9pBOwifnwu84BeKAVzmwM4TLvcVFowLcPAi6nA =

  1. টার্মিনাল রান

পিএইচপি কারিগর কনফিগারেশন: ক্যাশে

এটাই.


তাহলে php artisan key:generateআপনার .env ফাইলটিতে কী কী স্বয়ংক্রিয়ভাবে যুক্ত হয়নি?
Rwd

না, আমার ক্ষেত্রে।
দিমিত্রি গর্ডিয়েনকো

4

আপনি এই আদেশটি ব্যবহার করে অ্যাপ্লিকেশন এনক্রিপশন কী তৈরি করতে পারেন:

php artisan key:generate

তারপরে, এই কমান্ডটি ব্যবহার করে দ্রুত কনফিগারেশন লোড করার জন্য একটি ক্যাশে ফাইল তৈরি করুন:

php artisan config:cache

বা, এই আদেশটি ব্যবহার করে পিএইচপি বিকাশ সার্ভারে অ্যাপ্লিকেশনটি পরিবেশন করুন:

php artisan serve

এটাই!


3

আপনি যদি কোনও প্রকল্পের ক্লোন ক্লোন করেন তবে এই ধরণের সমস্যা সাধারণত দেখা দিতে পারে।

  1. .envফাইল আছে তা নিশ্চিত করুন
  2. রান করুন php artisan key:generateএবং তারপরে এটি APP_KEY উত্পন্ন করা উচিত এ APP_KEY
  3. শেষ পর্যন্ত চালানো php artisan serveএবং এটি কাজ করা উচিত।

1

আমি যখন আমার লারাভেল প্রকল্পের বিষয়বস্তুগুলি (সাইটগুলি / পুরাতন নাম বলি) ম্যানুয়ালি আমার ম্যাকের একটি নতুন ডিরেক্টরিতে (বলুন, সাইটগুলি / নতুন নাম) অনুলিপি করেছিলাম তখন আমি এই ইস্যুটিতে ছড়িয়ে পড়েছি। যেহেতু আমি ম্যানুয়ালি টেনে নিয়ে যাচ্ছিলাম, তাই এটি লুকানো ফাইলগুলি, 'এনভ' ধরেনি। আমি যখন সাইটগুলি / পুরাতন নামটি আরও ঘনিষ্ঠভাবে দেখলাম তখন আমি .editorconfig, .env, .env.example, .gitatrributes, .styleci.yml ইত্যাদি দেখতে পেলাম

আমি যখন লুকানো ফাইলগুলি নতুন ডিরেক্টরিতে অনুলিপি করলাম তখন ত্রুটিটি চলে গেল।

সুতরাং, "কোনও অ্যাপ্লিকেশন এনক্রিপশন কী নির্দিষ্ট করা হয়নি" "আপনার .env ফাইল অনুপস্থিত for" এর জন্য লারাভেল স্পিক।


0

কাজ পাওয়ার জন্য আমাকে php artisan queue:restartদৌড়ানোর পরে আমার ক্যু কর্মীটি পুনরায় চালু php artisan key:generateকরতে হয়েছিল।



0

আমার ক্ষেত্রে, প্রকল্পটি গিট থেকে ক্লোন করার সময় কোনও ছিল না .env

ফাইল। সুতরাং আমি .envউত্স প্রকল্প থেকে ফাইলটি অনুলিপি করছি এবং আমার বর্তমান প্রকল্পে পেস্ট করেছি এবং এটির ডাটাবেসের কনফিগারেশন পরিবর্তন করেছি এবং এটি সফলভাবে চলবে।

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