لاراول والت
- معرفی
- نصب و راه اندازی
- سایت های سرویس دهی
- اشتراک گذاری سایت ها
- متغیرهای محیط خاص سایت
- خدمات پروکسی
- درایورهای نوکر سفارشی
- سایر دستورات نوکر
- فهرست ها و فایل های Valet
معرفی
به دنبال راه سادهتری برای توسعه برنامههای لاراول در macOS هستید؟ Laravel Herd را بررسی کنید . هرد شامل همه چیزهایی است که برای شروع توسعه لاراول نیاز دارید، از جمله Valet، PHP و Composer.
Laravel Valet
یک محیط توسعه برای مینیمالیست های macOS است. Laravel Valet مک شما را طوری پیکربندی میکند که همیشه
Nginx را
در پسزمینه اجرا کند. سپس، با استفاده از
DnsMasq
، Valet تمام درخواستهای موجود در
*.test
دامنه را پراکسی میکند تا به سایتهای نصب شده در دستگاه محلی شما اشاره کند.
به عبارت دیگر، Valet یک محیط توسعه سریع لاراول است که از 7 مگابایت رم استفاده می کند. Valet جایگزین کاملی برای Sail یا Homestead نیست ، اما اگر میخواهید اصول اولیه انعطافپذیری داشته باشید، سرعت فوقالعاده را ترجیح میدهید یا روی دستگاهی با مقدار RAM محدود کار میکنید، یک جایگزین عالی ارائه میدهد.
خارج از جعبه، پشتیبانی Valet شامل، اما محدود به موارد زیر نیست:
با این حال، می توانید Valet را با درایورهای سفارشی خود گسترش دهید .
نصب و راه اندازی
Valet به macOS و Homebrew نیاز دارد . قبل از نصب، باید مطمئن شوید که هیچ برنامه دیگری مانند Apache یا Nginx به پورت 80 دستگاه محلی شما متصل نیست.
برای شروع، ابتدا باید با استفاده از
update
دستور زیر مطمئن شوید که Homebrew به روز است:
brew update
در مرحله بعد، برای نصب PHP باید از Homebrew استفاده کنید:
brew install php
پس از نصب PHP، آماده نصب مدیریت بسته Composer
هستید
. علاوه بر این، باید مطمئن شوید که
$HOME/.composer/vendor/bin
دایرکتوری در "PATH" سیستم شما قرار دارد. پس از نصب Composer، می توانید Laravel Valet را به عنوان بسته جهانی Composer نصب کنید:
composer global require laravel/valet
در نهایت، می توانید دستور Valet را اجرا کنید
install
. با این کار Valet و DnsMasq پیکربندی و نصب می شود. علاوه بر این، شیاطین Valet وابسته به پیکربندی میشوند تا هنگام راهاندازی سیستم شما راهاندازی شوند:
valet install
پس از نصب Valet،
*.test
با استفاده از دستوری مانند ping هر دامنه را در ترمینال خود پینگ کنید
ping foobar.test
. اگر Valet به درستی نصب شده باشد، باید ببینید که این دامنه در پاسخ میدهد
127.0.0.1
.
هر بار که دستگاه شما بوت می شود، Valet به طور خودکار خدمات مورد نیاز خود را شروع می کند.
نسخه های پی اچ پی
به جای تغییر نسخه جهانی PHP خود، می توانید به Valet دستور دهید از نسخه های PHP هر سایت از طریق
isolate
دستور استفاده کند .
Valet به شما امکان می دهد نسخه های PHP را با استفاده از
valet use php@version
دستور تغییر دهید. Valet نسخه PHP مشخص شده را از طریق Homebrew نصب می کند اگر قبلاً نصب نشده باشد:
valet use php@8.2 valet use php
همچنین می توانید یک
.valetrc
فایل در ریشه پروژه خود ایجاد کنید. فایل
.valetrc
باید حاوی نسخه PHP باشد که سایت باید از آن استفاده کند:
php=php@8.2
پس از ایجاد این فایل، می توانید به سادگی
valet use
دستور را اجرا کنید و با خواندن فایل، این دستور نسخه PHP ترجیحی سایت را مشخص می کند.
Valet فقط یک نسخه PHP را در یک زمان ارائه می دهد، حتی اگر چندین نسخه PHP را نصب کرده باشید.
پایگاه داده
اگر برنامه شما به پایگاه داده نیاز دارد، DBngin را
بررسی کنید
، که یک ابزار مدیریت پایگاه داده رایگان و همه کاره که شامل MySQL، PostgreSQL و Redis است، ارائه میکند. پس از نصب DBngin، می توانید با
127.0.0.1
استفاده از
root
نام کاربری و یک رشته خالی برای رمز عبور به پایگاه داده خود متصل شوید.
تنظیم مجدد نصب
اگر در اجرای صحیح نصب Valet خود با مشکل مواجه هستید، اجرای
composer global require laravel/valet
دستور به دنبال آن
valet install
نصب شما را بازنشانی می کند و می تواند مشکلات مختلفی را حل کند. در موارد نادر، ممکن است نیاز به "تنظیم مجدد" Valet با اجرای
valet uninstall --force
و به دنبال آن باشد
valet install
.
ارتقاء Valet
می توانید نصب Valet خود را با اجرای
composer global require laravel/valet
دستور در ترمینال خود به روز کنید. پس از ارتقاء، اجرای این دستور خوب است
valet install
تا Valet بتواند در صورت لزوم، فایل های پیکربندی شما را ارتقا دهد.
ارتقا به Valet 4
اگر در حال ارتقاء از Valet 3 به Valet 4 هستید، مراحل زیر را انجام دهید تا نصب Valet خود را به درستی ارتقا دهید:
-
.valetphprc
اگر فایل هایی را برای سفارشی کردن نسخه PHP سایت خود اضافه کرده اید ، نام هر.valetphprc
فایل را به.valetrc
. سپس،php=
به محتوای موجود فایل اضافه کنید.valetrc
. - هر درایور سفارشی را بهروزرسانی کنید تا با فضای نام، پسوند، راهنماییهای نوع و اشارههای نوع برگشتی سیستم درایور جدید مطابقت داشته باشد. شما می توانید به عنوان مثال از SampleValetDriver Valet استفاده کنید .
- اگر از PHP 7.1 - 7.4 برای سرویس دادن به سایتهای خود استفاده میکنید، مطمئن شوید که همچنان از Homebrew برای نصب نسخهای از PHP 8.0 یا بالاتر استفاده میکنید، زیرا Valet از این نسخه استفاده میکند، حتی اگر نسخه پیوند شده اصلی شما نباشد، برای اجرای برخی از آن. اسکریپت ها
سایت های سرویس دهی
پس از نصب Valet، آماده شروع سرویس دهی به برنامه های لاراول خود هستید. Valet دو دستور را برای کمک به شما در ارائه برنامه های کاربردی ارائه می دهد:
park
و
link
.
دستور
park
دستور
park
یک دایرکتوری را در دستگاه شما ثبت می کند که حاوی برنامه های کاربردی شما است. هنگامی که دایرکتوری با Valet "پارک شده" شد، همه دایرکتوری های موجود در آن دایرکتوری در مرورگر وب شما در آدرس زیر قابل دسترسی خواهند بود
http://<directory-name>.test
:
cd ~/Sites valet park
این تمام چیزی است که در آن وجود دارد. اکنون، هر برنامهای که در فهرست «پارکشده» خود ایجاد میکنید، بهطور خودکار با استفاده از کنوانسیون ارائه میشود
http://<directory-name>.test
. بنابراین، اگر دایرکتوری پارک شده شما حاوی دایرکتوری به نام "laravel" باشد، برنامه در آن دایرکتوری در دسترس خواهد بود
http://laravel.test
. علاوه بر این، Valet به طور خودکار به شما اجازه می دهد تا با استفاده از زیر دامنه های wildcard ( ) به سایت دسترسی داشته باشید
http://foo.laravel.test
.
دستور
link
این
link
دستور همچنین می تواند برای سرویس دادن به برنامه های لاراول شما استفاده شود. اگر بخواهید یک سایت را در یک دایرکتوری و نه کل دایرکتوری را ارائه دهید، این دستور مفید است:
cd ~/Sites/laravel valet link
هنگامی که یک برنامه با استفاده از دستور به Valet پیوند داده شد
link
، می توانید با استفاده از نام دایرکتوری آن به برنامه دسترسی پیدا کنید. بنابراین، سایتی که در مثال بالا پیوند داده شده است، ممکن است در دسترسی باشد
http://laravel.test
. علاوه بر این، Valet به طور خودکار به شما امکان می دهد با استفاده از زیر دامنه های wildcard ( ) به سایت دسترسی داشته باشید
http://foo.laravel.test
.
اگر میخواهید برنامه را با نام میزبان دیگری ارائه کنید، میتوانید نام میزبان را به
link
دستور ارسال کنید. به عنوان مثال، می توانید دستور زیر را برای در دسترس قرار دادن یک برنامه در آدرس زیر اجرا کنید
http://application.test
:
cd ~/Sites/laravel valet link application
البته، میتوانید با استفاده از
link
دستور زیر، برنامهها را در زیر دامنهها نیز ارائه دهید:
valet link api.application
شما می توانید این
links
دستور را برای نمایش لیستی از همه دایرکتوری های پیوند شده خود اجرا کنید:
valet links
این
unlink
دستور ممکن است برای از بین بردن پیوند نمادین یک سایت استفاده شود:
cd ~/Sites/laravel valet unlink
ایمن سازی سایت ها با TLS
به طور پیش فرض، Valet سایت ها را از طریق HTTP ارائه می دهد. با این حال، اگر می خواهید یک سایت را با استفاده از HTTP/2 از طریق TLS رمزگذاری شده ارائه کنید، می توانید از
secure
دستور استفاده کنید. به عنوان مثال، اگر سایت شما توسط Valet در دامنه ارائه می شود
laravel.test
، باید دستور زیر را برای ایمن سازی آن اجرا کنید:
valet secure laravel
برای "ناامن" کردن یک سایت و بازگشت به سرویس دادن به ترافیک آن از طریق HTTP ساده، از
unsecure
دستور استفاده کنید. مانند
secure
دستور، این دستور نام میزبانی را میپذیرد که میخواهید ایمن نکنید:
valet unsecure laravel
ارائه یک سایت پیش فرض
گاهی اوقات، ممکن است بخواهید
404
هنگام بازدید از یک
test
دامنه ناشناخته، Valet را برای سرویس دادن به یک سایت "پیشفرض" به جای a پیکربندی کنید. برای انجام این کار، میتوانید
default
گزینهای را به فایل پیکربندی خود اضافه کنید
~/.config/valet/config.json
که حاوی مسیری به سایت است که باید به عنوان سایت پیشفرض شما عمل کند:
"default": "/Users/Sally/Sites/example-site",
نسخه های پی اچ پی در هر سایت
به طور پیش فرض، Valet از نصب جهانی PHP شما برای ارائه خدمات به سایت های شما استفاده می کند. با این حال، اگر نیاز به پشتیبانی از چندین نسخه PHP در سایتهای مختلف دارید، میتوانید از این
isolate
دستور برای تعیین نسخه PHP که یک سایت خاص باید استفاده کند استفاده کنید. این
isolate
فرمان Valet را برای استفاده از نسخه PHP مشخص شده برای سایتی که در فهرست کاری فعلی شما قرار دارد، پیکربندی می کند:
cd ~/Sites/example-site valet isolate php@8.0
اگر نام سایت شما با نام دایرکتوری حاوی آن مطابقت ندارد، می توانید نام سایت را با استفاده از
--site
گزینه زیر مشخص کنید:
valet isolate php@8.0 --site="site-name"
برای راحتی، می توانید از دستورات
valet php
،
composer
و
which-php
برای فراخوانی پروکسی به CLI یا ابزار مناسب PHP بر اساس نسخه PHP پیکربندی شده سایت استفاده کنید:
valet phpvalet composervalet which-php
می توانید
isolated
دستور نمایش لیستی از تمام سایت های ایزوله شده و نسخه های PHP آنها را اجرا کنید:
valet isolated
برای برگرداندن یک سایت به نسخه PHP نصب شده جهانی Valet، می توانید
unisolate
دستور را از دایرکتوری ریشه سایت فراخوانی کنید:
valet unisolate
اشتراک گذاری سایت ها
Valet شامل دستوری برای به اشتراک گذاشتن سایت های محلی شما با جهان است، که راهی آسان برای آزمایش سایت شما در دستگاه های تلفن همراه یا به اشتراک گذاری آن با اعضای تیم و مشتریان ارائه می دهد.
خارج از جعبه، Valet از اشتراک گذاری سایت های شما از طریق ngrok یا Expose پشتیبانی می کند. قبل از به اشتراک گذاری یک سایت، باید پیکربندی Valet خود را با استفاده از دستور به روز کنید و یکی
یا را
share-tool
مشخص کنید
:
ngrok
expose
valet share-tool ngrok
اگر ابزاری را انتخاب کنید و آن را از طریق Homebrew (برای ngrok) یا Composer (برای Expose) نصب نکنید، Valet به طور خودکار از شما می خواهد که آن را نصب کنید. البته، هر دو ابزار از شما می خواهند قبل از شروع به اشتراک گذاری سایت ها، حساب ngrok یا Expose خود را احراز هویت کنید.
برای اشتراک گذاری یک سایت، به دایرکتوری سایت در ترمینال خود بروید و
share
دستور Valet را اجرا کنید. یک URL در دسترس عموم در کلیپ بورد شما قرار می گیرد و آماده است که مستقیماً در مرورگر شما جایگذاری شود یا با تیم شما به اشتراک گذاشته شود:
cd ~/Sites/laravel valet share
برای توقف اشتراکگذاری سایت خود، میتوانید فشار دهید
Control + C
.
اگر از یک سرور DNS سفارشی استفاده میکنید (مانند
1.1.1.1
)، اشتراکگذاری ngrok ممکن است درست کار نکند. اگر این مورد در دستگاه شما است، تنظیمات سیستم Mac خود را باز کنید، به تنظیمات شبکه بروید، تنظیمات پیشرفته را باز کنید، سپس به تب DNS بروید و127.0.0.1
به عنوان اولین سرور DNS خود را اضافه کنید.
اشتراک گذاری سایت ها از طریق Ngrok
اشتراکگذاری سایت خود با استفاده از ngrok مستلزم ایجاد یک حساب کاربری ngrok و تنظیم یک نشانه احراز هویت است . هنگامی که یک نشانه احراز هویت دارید، می توانید پیکربندی Valet خود را با آن نشانه به روز کنید:
valet set-ngrok-token YOUR_TOKEN_HERE
می توانید پارامترهای ngrok اضافی را به دستور share ارسال کنید، مانند
valet share --region=eu
. برای اطلاعات بیشتر، به مستندات ngrok مراجعه کنید .
اشتراک گذاری سایت ها از طریق Expose
برای اشتراکگذاری سایت خود با استفاده از Expose، باید یک حساب Expose ایجاد کنید و با Expose از طریق رمز احراز هویت خود احراز هویت کنید .
برای اطلاعات در مورد پارامترهای اضافی خط فرمان که پشتیبانی می کند، می توانید به اسناد Expose مراجعه کنید.
اشتراک گذاری سایت ها در شبکه محلی شما
Valet ترافیک ورودی را به
127.0.0.1
رابط داخلی به طور پیش فرض محدود می کند تا دستگاه توسعه شما در معرض خطرات امنیتی اینترنت قرار نگیرد.
اگر می خواهید به دستگاه های دیگر در شبکه محلی خود اجازه دهید از طریق آدرس IP دستگاه شما به سایت های Valet در دستگاه شما دسترسی داشته باشند (به عنوان مثال:
192.168.1.10/application.test
)، باید به صورت دستی فایل پیکربندی Nginx مناسب را برای آن سایت ویرایش کنید تا محدودیت دستورالعمل حذف شود
listen
. . شما باید
127.0.0.1:
پیشوند دایرکتیو
listen
پورت های 80 و 443 را حذف کنید.
valet secure
اگر روی پروژه
اجرا نکردهاید ، میتوانید با ویرایش
/usr/local/etc/nginx/valet/valet.conf
فایل، دسترسی به شبکه را برای همه سایتهای غیر HTTPS باز کنید. با این حال، اگر به سایت پروژه از طریق HTTPS سرویس می دهید (شما
valet secure
برای سایت اجرا کرده اید) باید
~/.config/valet/Nginx/app-name.test
فایل را ویرایش کنید.
هنگامی که پیکربندی Nginx خود را به روز کردید،
valet restart
دستور اعمال تغییرات پیکربندی را اجرا کنید.
متغیرهای محیط خاص سایت
برخی از برنامه هایی که از چارچوب های دیگر استفاده می کنند ممکن است به متغیرهای محیط سرور بستگی داشته باشند، اما راهی برای پیکربندی آن متغیرها در پروژه شما ارائه نمی دهند. Valet به شما اجازه می دهد تا با افزودن یک
.valet-env.php
فایل در ریشه پروژه خود،
متغیرهای محیطی خاص سایت را پیکربندی کنید . این فایل باید آرایه ای از جفت های متغیر سایت/محیط را برگرداند که
$_SERVER
برای هر سایت مشخص شده در آرایه
به آرایه جهانی اضافه می شود :
<?php return [ // Set $_SERVER['key'] to "value" for the laravel.test site... 'laravel' => [ 'key' => 'value', ], // Set $_SERVER['key'] to "value" for all sites... '*' => [ 'key' => 'value', ],];
خدمات پروکسی
گاهی اوقات ممکن است بخواهید دامنه Valet را به سرویس دیگری در دستگاه محلی خود پراکسی کنید. به عنوان مثال، ممکن است گاهی اوقات نیاز به اجرای Valet داشته باشید در حالی که یک سایت جداگانه در Docker نیز اجرا می کنید. با این حال، Valet و Docker هر دو نمی توانند همزمان به پورت 80 متصل شوند.
برای حل این مشکل، می توانید از
proxy
دستور ایجاد یک پروکسی استفاده کنید. برای مثال، میتوانید تمام ترافیک را از
http://elasticsearch.test
به
http://127.0.0.1:9200
:
# Proxy over HTTP...valet proxy elasticsearch http://127.0.0.1:9200 # Proxy over TLS + HTTP/2...valet proxy elasticsearch http://127.0.0.1:9200 --secure
می توانید با استفاده از
unproxy
دستور زیر یک پروکسی را حذف کنید:
valet unproxy elasticsearch
می توانید از این
proxies
دستور برای فهرست کردن تمام تنظیمات سایتی که پروکسی شده اند استفاده کنید:
valet proxies
درایورهای نوکر سفارشی
میتوانید «درایور» Valet خود را بنویسید تا به برنامههای PHP در حال اجرا بر روی یک چارچوب یا CMS که توسط Valet پشتیبانی نمیشود، ارائه شود. هنگامی که Valet را نصب می کنید، یک
~/.config/valet/Drivers
دایرکتوری ایجاد می شود که حاوی یک
SampleValetDriver.php
فایل است. این فایل شامل یک اجرای درایور نمونه برای نشان دادن نحوه نوشتن یک درایور سفارشی است. برای نوشتن درایور فقط باید سه روش را اجرا کنید:
serves
,
isStaticFile
و
frontControllerPath
.
هر سه متد مقادیر، و و را به عنوان آرگومان های خود دریافت
$sitePath
می
$siteName
کنند
$uri
.
$sitePath
مسیر کاملاً واجد شرایط به سایتی است که در دستگاه شما ارائه می شود،
مانند
/Users/Lisa/Sites/my-project
.
$siteName
بخش "میزبان" / "نام سایت" دامنه ( )
است
my-project
.
$uri
URI درخواست ورودی (
/foo/bar
)
است .
هنگامی که درایور Valet سفارشی خود را تکمیل کردید، آن را
~/.config/valet/Drivers
با استفاده از
FrameworkValetDriver.php
قرارداد نامگذاری در دایرکتوری قرار دهید. به عنوان مثال، اگر در حال نوشتن یک درایور سفارشی برای وردپرس هستید، نام فایل شما باید باشد
WordPressValetDriver.php
.
بیایید به یک نمونه پیادهسازی از هر روشی که درایور Valet سفارشی شما باید اجرا کند نگاهی بیاندازیم.
روش
serves
اگر راننده شما باید درخواست ورودی را رسیدگی کند،
روش
serves
باید برگردد .
true
در غیر این صورت، روش باید برگردد
false
. بنابراین، در این روش، باید سعی کنید تعیین کنید که آیا پروژه داده شده
$sitePath
حاوی پروژه ای از نوع مورد نظر شما است یا خیر.
برای مثال، بیایید تصور کنیم در حال نوشتن یک
WordPressValetDriver
. روش
ما
serves
ممکن است چیزی شبیه به این باشد:
/** * Determine if the driver serves the request. */public function serves(string $sitePath, string $siteName, string $uri): bool{ return is_dir($sitePath.'/wp-admin');}
روش
isStaticFile
باید
isStaticFile
تعیین کند که آیا درخواست ورودی برای فایلی است که "ایستا" است، مانند یک تصویر یا یک شیوه نامه. اگر فایل ثابت است، روش باید مسیر کاملا واجد شرایط را به فایل استاتیک روی دیسک برگرداند. اگر درخواست دریافتی مربوط به یک فایل ثابت نیست، متد باید به صورت زیر برگردد
false
:
/** * Determine if the incoming request is for a static file. * * @return string|false */public function isStaticFile(string $sitePath, string $siteName, string $uri){ if (file_exists($staticFilePath = $sitePath.'/public/'.$uri)) { return $staticFilePath; } return false;}
متد
isStaticFile
فقط در صورتی فراخوانی می شود کهserves
متد برای درخواست ورودی برگرددtrue
و URI درخواست نباشد/
.
روش
frontControllerPath
این
frontControllerPath
روش باید مسیر کاملاً واجد شرایط را به «کنترلکننده جلو» برنامه شما برگرداند، که معمولاً یک فایل «index.php» یا معادل آن است:
/** * Get the fully resolved path to the application's front controller. */public function frontControllerPath(string $sitePath, string $siteName, string $uri): string{ return $sitePath.'/public/index.php';}
رانندگان محلی
اگر می خواهید برای یک برنامه یک درایور سفارشی Valet تعریف کنید، یک
LocalValetDriver.php
فایل در فهرست اصلی برنامه ایجاد کنید. درایور سفارشی شما ممکن است
ValetDriver
کلاس پایه را گسترش دهد یا یک درایور خاص برنامه موجود را گسترش دهد مانند
LaravelValetDriver
:
use Valet\Drivers\LaravelValetDriver; class LocalValetDriver extends LaravelValetDriver{ /** * Determine if the driver serves the request. */ public function serves(string $sitePath, string $siteName, string $uri): bool { return true; } /** * Get the fully resolved path to the application's front controller. */ public function frontControllerPath(string $sitePath, string $siteName, string $uri): string { return $sitePath.'/public_html/index.php'; }}
سایر دستورات نوکر
فرمان | شرح |
---|---|
valet list |
نمایش لیستی از تمام دستورات Valet. |
valet diagnose |
تشخیص خروجی برای کمک به اشکال زدایی Valet. |
valet directory-listing |
رفتار فهرست راهنما را تعیین کنید. پیش فرض "خاموش" است، که صفحه 404 را برای فهرست ها ارائه می کند. |
valet forget |
این دستور را از یک پوشه "parked" اجرا کنید تا آن را از لیست پوشه پارک شده حذف کنید. |
valet log |
فهرستی از گزارشهای نوشته شده توسط سرویسهای Valet را مشاهده کنید. |
valet paths |
تمام مسیرهای "پارک شده" خود را مشاهده کنید. |
valet restart |
دیمون های Valet را مجددا راه اندازی کنید. |
valet start |
دیمون های Valet را راه اندازی کنید. |
valet stop |
شیاطین والت را متوقف کنید. |
valet trust |
فایلهای sudoers را برای Brew و Valet اضافه کنید تا اجازه دهید دستورات Valet بدون درخواست رمز عبور شما اجرا شوند. |
valet uninstall |
Uninstall Valet: دستورالعملهایی را برای حذف نصب دستی نشان میدهد.
--force
گزینه حذف تهاجمی تمام منابع Valet را
پاس کنید .
|
فهرست ها و فایل های Valet
ممکن است هنگام عیبیابی مشکلات محیط Valet، اطلاعات فهرست و فایل زیر برای شما مفید باشد:
~/.config/valet
شامل تمام تنظیمات Valet است. ممکن است بخواهید از این دایرکتوری یک نسخه پشتیبان تهیه کنید.
~/.config/valet/dnsmasq.d/
این دایرکتوری شامل پیکربندی DNSMasq است.
~/.config/valet/Drivers/
این فهرست شامل درایورهای Valet است. درایورها تعیین می کنند که چگونه یک چارچوب / CMS خاص ارائه می شود.
~/.config/valet/Nginx/
این فهرست شامل تمام تنظیمات سایت Nginx Valet است. این فایل ها هنگام اجرای دستورات
install
و بازسازی می شوند
secure
.
~/.config/valet/Sites/
این دایرکتوری شامل تمام پیوندهای نمادین پروژه های پیوند شده شما است .
~/.config/valet/config.json
این فایل، فایل پیکربندی اصلی Valet است.
~/.config/valet/valet.sock
این فایل سوکت PHP-FPM است که توسط نصب Nginx Valet استفاده می شود. این تنها در صورتی وجود خواهد داشت که PHP به درستی اجرا شود.
~/.config/valet/Log/fpm-php.www.log
این فایل لاگ کاربر برای خطاهای PHP است.
~/.config/valet/Log/nginx-error.log
این فایل گزارش کاربری خطاهای Nginx است.
/usr/local/var/log/php-fpm.log
این فایل گزارش سیستم برای خطاهای PHP-FPM است.
/usr/local/var/log/nginx
این دایرکتوری شامل گزارش های دسترسی و خطای Nginx است.
/usr/local/etc/php/X.X/conf.d
این دایرکتوری حاوی
*.ini
فایل هایی برای تنظیمات مختلف پیکربندی PHP است.
/usr/local/etc/php/X.X/php-fpm.d/valet-fpm.conf
این فایل فایل پیکربندی استخر PHP-FPM است.
~/.composer/vendor/laravel/valet/cli/stubs/secure.valet.conf
این فایل پیکربندی پیشفرض Nginx است که برای ساخت گواهیهای SSL برای سایتهای شما استفاده میشود.
دسترسی به دیسک
از macOS 10.14، دسترسی به برخی از فایل ها و دایرکتوری ها به طور پیش فرض محدود شده است . این محدودیت ها شامل دایرکتوری های دسکتاپ، اسناد و دانلودها می شود. علاوه بر این، حجم شبکه و دسترسی حجم قابل جابجایی محدود شده است. بنابراین، Valet توصیه میکند پوشههای سایت شما خارج از این مکانهای محافظتشده قرار داشته باشند.
با این حال، اگر میخواهید از داخل یکی از آن مکانها به سایتها سرویس دهید، باید به Nginx «دسترسی کامل دیسک» بدهید. در غیر این صورت، ممکن است با خطاهای سرور یا سایر رفتارهای غیرقابل پیش بینی Nginx مواجه شوید، مخصوصاً هنگام ارائه دارایی های ثابت. به طور معمول، macOS به طور خودکار از شما می خواهد که به Nginx دسترسی کامل به این مکان ها بدهید. یا، می توانید این کار را به صورت دستی از طریق
System Preferences
>
Security & Privacy
>
Privacy
و انتخاب انجام دهید
Full Disk Access
. در مرحله بعد، هر
nginx
ورودی را در پنجره اصلی فعال کنید.