فهرست مقاله
حل phpMyAdmin سرور وب سایت فایل را ذخیره نکرده است /home/abc/cwl_cwl.sql مسئله مجوزها
آیا تا به حال با چنین شرایطی مواجه شده اید؟ وقتی استفاده می کنید phpMyAdmin هنگام صادرات پایگاه داده، متوجه شدم که نمی تواند فایل را در دایرکتوری مشخص شده ذخیره کند. به خصوص دیوانه کننده نیست؟
این مشکل در واقع بسیار رایج است، زیرا معمولا سرور مجوز نوشتن در آن مسیر را ندارد.
بنابراین، بیایید یک بار برای همیشه این مشکل را حل کنیم و وب سایت شما را روان اجرا کنیم.
چرا سرور وب سایت phpMyAdmin اجازه ذخیره فایل های .sql را ندارد؟
اول، ما باید یک مفهوم اساسی را درک کنیم: هر سرور وب سایت دارای برخی تنظیمات مجوز دسترسی است که کنترل می کند کاربران یا سرویس هایی می توانند عملیات خاصی را بخوانند، بنویسند یا انجام دهند.
اگر سرور شما (مانند Apache یا Nginx) مجوز نوشتن در یک دایرکتوری خاص را نداشته باشد، طبیعتاً نمی تواند فایل را ذخیره کند. به همین دلیل است phpMyAdmin از شما می خواهد "شما مجوز ذخیره فایل را ندارید."
به بیان ساده،phpMyAdmin می خواهید پشتیبان پایگاه داده را ذخیره کنید /home/abc/cwl_cwl.sql این مسیر ولی چون سرور مجوز نداره اصلا نمیتونه این پوشه رو جابجا کنه.
بنابراین، مشکل دقیقا چیست؟ مجوزها! مجوزها! مجوزها!
راه حل: جفت را بازیابی کنید /home/abc/ مجوزهای دایرکتوری
از آنجایی که مشکل در مجوزها است، اجازه دهید با تغییر مجوزها شروع کنیم.
اجازه دادن به سرور برای دسترسی و نوشتن در دایرکتوری اجازه می دهد phpMyAdmin کار خود را بدون مشکل انجام می دهد.

1. مجوزهای دایرکتوری را تغییر دهید
این مستقیم ترین راه است. شما باید اصلاح کنید /home/abc/ مجوزها در دایرکتوری به طوری که سرور (مانند Apache یا Nginx) می تواند روی آن بنویسد. فرض کنید سرور شما آپاچی است و روی آن کار می کند www-data کاربر (این کاربر پیش فرض آپاچی است، البته شما می توانید کاربر و گروه را با توجه به پیکربندی واقعی خود تنظیم کنید).
گام:
sudo chown www-data:www-data /home/abc/ -R
sudo chmod 755 /home/abc/ -R
توضیح:
chown www-data:www-data /home/abc/ -R: این دستور خواهد بود/home/abc/مالک دایرکتوری و زیر شاخه های آن به تغییر یافته استwww-dataکاربران و گروه هاchmod 755 /home/abc/ -R: این دستور به صاحب دایرکتوری مجوز خواندن، نوشتن و اجرا می دهد، در حالی که گروه و سایر کاربران فقط مجوز خواندن و اجرا دارند.
اینجا،755 این یک تنظیم مجوز بسیار کلاسیک است که می تواند اطمینان حاصل کند که سرور وب سایت دارای مجوزهای کافی برای کار با فایل ها است، در حالی که مجوزهای زیادی را به سایر کاربران برای محافظت از امنیت سیستم نمی دهد.
2. استفاده کنید /tmp/ دایرکتوری (راه حل دیگری که دایرکتوری ریشه را ترک نمی کند)
اگر علاقه مند به اصلاح هستید /home/abc/ اگر در مورد مجوزهای دایرکتوری مطمئن نیستید، یا اگر می خواهید ساختار دایرکتوری اصلی را حفظ کنید، راه هوشمندانه تری دیگری وجود دارد.
می توانید اجازه دهید phpMyAdmin ذخیره فایل در /tmp/ دایرکتوری، این دایرکتوری معمولاً دارای مجوزهای نوشتن برای همه کاربران است.
هنگام صادرات پایگاه داده، مستقیماً انتخاب کنید /tmp/ به عنوان مسیر ذخیره، دستور به صورت زیر است:
/tmp/cwl_cwl.sql
انجام این کار از مسائل مربوط به مجوز جلوگیری می کند. فایل در ذخیره خواهد شد /tmp/ دایرکتوری، و سپس می توانید به صورت دستی آن را به دایرکتوری مورد نظر خود منتقل کنید و از مشکل تغییر مجوزها جلوگیری کنید.
3. بررسی کنید phpMyAdmin پیکربندی
اگر روش های بالا را امتحان کرده اید و باز هم جواب نمی دهد، ممکن است مشکل از این باشد phpMyAdmin بر اساس پیکربندی خودش. در برخی موارد،phpMyAdmin ممکن است پیکربندی شود تا فقط اجازه دهد فایل ها در فهرست های خاص ذخیره شوند، این محدودیت را می توان در فایل پیکربندی پیدا کرد.
گام:
باید مشاهده یا اصلاح کنید phpMyAdmin فایل پیکربندی، مسیر معمولاً به صورت زیر است:
/etc/phpmyadmin/
یا:
/usr/share/phpmyadmin/
میتوانید بررسی کنید که آیا محدودیتهای مسیر مشابهی وجود دارد یا خیر و آنها را بر اساس آن اصلاح کنید. اگر مطمئن نیستید که چگونه فایل پیکربندی را تغییر دهید، توصیه می شود ابتدا از فایل اصلی نسخه پشتیبان تهیه کنید تا در صورت بروز مشکل بتوانید به راحتی آن را بازیابی کنید.
چرا این روش ها جواب می دهند؟
در واقع، مهم نیست که چه نوع راه حلی است، هسته اصلی حول موضوع مجوز می چرخد. سرورهای وب، به ویژه سرورهایی مانند Apache یا Nginx، هنگام دسترسی به دایرکتوری های سیستم، به شدت توسط سیستم عامل مدیریت می شوند. با تنظیم مجوزها یا تغییر مسیر ذخیره به راحتی می توانیم این محدودیت ها را دور بزنیم.
تغییر مجوزهای دایرکتوری می تواند اساساً مشکل سرور را حل کند که قادر به نوشتن نیست، اما گاهی اوقات به دلایل امنیتی، ممکن است نخواهید مجوزهای پوشه های اصلی را تغییر دهید. در این زمان /tmp/ دایرکتوری ها یک جایگزین عالی، انعطاف پذیر و ساده هستند.
و بررسی نهایی phpMyAdmin این پیکربندی برای از بین بردن برخی مشکلات ظریف تر در سطح سیستم است. به هر حال، گاهی اوقات مشکل در اختیار ما نیست.نرم افزارمحدودیت های پیکربندی خود
نظر من
با توجه به موضوع مجوزها، در واقع یک پیچیدگی اجتناب ناپذیر در کار مشترک سیستم عامل و سرور وب سایت است. شما می توانید آن را به عنوان یک سیستم محافظ سخت گیر در نظر بگیرید. و زمانی که این «اجازه» ناکافی باشد، مشکلاتی پیش می آید.
در سطح بالاتر، موضوع مجوز ساده به نظر می رسد، اما در واقع بخش مهمی از تضمین امنیت و ثبات کل سیستم است. تنظیم مجوزهای خیلی زیاد یا خیلی کم ممکن است باعث ایجاد مشکل در عملکرد عادی برنامه شود.
بنابراین، حل کنید phpMyAdmin وقتی نوبت به مسائل مربوط به مجوزها می رسد، ما فقط به "درمان علائم" نمی پردازیم، بلکه "علت اصلی" را نیز درمان می کنیم - باید مطمئن شوید که پیکربندی سرور هم ایمن و هم کارآمد است.
خلاصه و پیشنهادات اقدام
به طور خلاصه، چه زمانی phpMyAdmin هنگامی که با مشکلات مجوز ذخیره فایل مواجه می شوید، چندین راه حل برای انتخاب دارید:
- مجوزهای دایرکتوری را تغییر دهید: این مستقیم ترین راه برای دادن مجوز به سرور برای نوشتن در دایرکتوری و حل مشکل اساسی است.
- استفاده
/tmp/فهرست مطالب: اگر نمی خواهید مجوزهای دایرکتوری را تغییر دهید، می توانید فایل را به طور موقت در آن ذخیره کنید/tmp/و سپس به صورت دستی حرکت کنید. - معاینه
phpMyAdminپیکربندی: اگر مشکلی در تنظیمات مجوز وجود ندارد، ممکن است این مشکل وجود داشته باشدphpMyAdminمشکلات ناشی از پیکربندی خودتان، فایل پیکربندی را بررسی کنید تا این احتمال از بین برود.
هر راه حلی سناریوهای کاربردی خود را دارد. پیشنهاد من این است که ابتدا سعی کنید مجوزهای دایرکتوری را تغییر دهید این مستقیم ترین و مؤثرترین راه است. اگر به دلایل امنیتی نمی خواهید مجوزها را تغییر دهید، می توانید استفاده کنید /tmp/ فهرست مطالب. در نهایت، اگر مشکل هنوز حل نشد، بررسی کنید phpMyAdmin فایل پیکربندی
مسائل مربوط به مجوزها از بین نمی روند، اما راه حل ها متنوع هستند. حال می توانید با توجه به شرایط خود مناسب ترین راه حل را انتخاب کنید و همین الان اقدام کنید!
وبلاگ امید چن ویلیانگ ( https://www.chenweiliang.com/ ) shared "حل مشکلی که سرور وب سایت phpMyAdmin مجوز ذخیره فایل های .sql را ندارد" برای شما مفید خواهد بود.
به اشتراک گذاری لینک این مقاله خوش آمدید:https://www.chenweiliang.com/cwl-32115.html
