دادن دسترسی اینترنت در کریو
<p>شما دو اینترفیس که به مودم متصل هست رو باید وارد internet interfaces کنید و برای هر دو تنظیمات ip و gateway رو انجام بدید یا بصورت dhcp میتونه بگیره.</p><p>در این شرایط چون دو default gateway دارید مشکل ایجاد میشه و فقط از یکی استفاده میشه. <br></p><p>راهکار اینه که در قسمت بالای اینترفیس ها internet connectivity را روی multiple-load balancing قرار بدید اما برای اینکه ترافیک تقسیم نشه بصورت اتوماتیک،  باید rule پیشفرض اینترنت کاربران را حذف و دو rule ایجاد کنید:</p><p>1- source گروه اول ، destination: internet interfaces و enable nat: use outgoing interface روی اینترفیس wan اول</p><p>2- source گروه دوم ، destination: internet interfaces و enable nat: use outgoing interface روی اینترفیس wan دوم</p><p>همچنین دقت کنید که برای هر دو اینترفیس wan گزینه use for link loadbalancing فعال و weight برابر 1 باشد.<br></p>
بله میشه این مسئله بسیار ساده هست .
شما باید در سمت سرور خودتون نقش های کاربران رو مشخص کنید.
و هنگام لود ویو از متد سازنده constructor استفاده کنید ، و به کمک دستورات شرطی ویوو های مختلف برای کاربر مانند عادی و ادمین و ... نمایش دهید
https://medium.com/dailyjs/managing-user-permissions-in-your-react-app-a93a94ff9b40
http://react-redux-firebase.com/docs/recipes/roles.html ورزشهای داخل سایت را انجام دهید درمانش همان کرایو است خب! در ابتدا باید بگم که این چیزی که میگی:



> 
> نحوه گرفتن اطلاعات یک سایت در سایت خودمان
> 
> 
> 


رو بهش میگن **«کراول» (واکشی) کردن**. اینکه این چیه، اینکه چطوری میشه پیاده سازیش کرد، اینکه چه محدودیت هایی داره و .. رو در ادامه توضیح میدم.







کراول یا واکشی کردن چیست؟



در دنیای برنامه نویسی *(بخصوص وب)* ، وقتی یک صفحه وب رو توسط یک بات (که توسط یک زبان برنامه نویسی نوشته شده) باز میکنی و دیتاش رو کپی و میریزی تو دیتابیس خودت (یا دیتا رو میگیری میفرستی واسه یه وب سرویس دیگه) رو بهش میگن کراول کردن.


برای این کار بیشمار کتابخونه و پلاگین وجود داره. اگه بخوام متناسب با سوال خودت بگم، پلاگین [rexcrawler](https://wordpress.org/plugins/rexcrawler/) یکی از پلاگین های محبوب وردپرسی هست دقیقا برای همین کار:




rexCrawler uses regular expressions to crawl specified websites.

Websites are saved in user-defined groups, which can then be showed on wordpress pages/posts using shortcodes.

The data crawled by rexCrawler is saved in the WP database in custom tables. Once data has been crawled, it can be inserted

into a page using the shortcode [rexCrawler]


همانطور که از توضیحات پلاگین مشخص هست، کاربرد این پلاگین واکشی صفحات وب هست و ذخیره اونا در دیتابیس که نهایتان توی `pages/posts` توسط شرت‌کاتش نمایش داده میشن. تمام این فرایند *(همانطور که از اسم این پلاگین مشخصه)* مبتنی بر ریجگس regex هست. *(ریجکس رو توی لام تا کام با برچسب `عبارات باقاعده` میشناسیم)*.



> 
> **نکته:** به عنوان یک نکته تکمیلی هم باید بگم که کتابخونه های دیگه ای هم برای زبان های دیگه وجود داره که به صورت خیلی دقیق تر و حرفه ای تر همین کار رو با عملکرد خیلی بهتری انجام میدن. مثلا کتابخونه `PHP Simple HTML DOM Parser` یکی از کتابخونه های زبان PHP است که این امکان رو به ما میده که صفحات وب رو واکشی و تجزیه کنیم.
> 
> 
> 


پروسه کرال کردن رو میشه به چند دسته تقسیم کرد:


1. **باز کردن یک صفحه وب:** که عموما در زبان برنامه نویسی PHP توسط تابع [`file_get_contents`](http://php.net/manual/en/function.file-get-contents.php) انجام میشه. یعنی تمام محتوای یک صفحه انگلیسی رو باز می کنه *([تمام دام رو]؛ دام به معنی یک صفحه وب به همراه تمام تگ های HTMLش)*.
2. **تجزیه کردن محتوای صفحه وب:** همانطور که گفته شد، تمام دام الان باز شده و ما لازم داریم که اونو تجزیه کنیم؛ این کار رو به منظور جدا کردن دیتایی که لازم داریم از توی صفحه انجام میدیم. خیلی جاها از ریجکس [regex](http://php.net/manual/en/reference.pcre.pattern.syntax.php) برای این کار استفاده می کنن. اگه هم خیلی حرفه ای بخوایم جلو بریم، از کتابخونه های DOM Parser باید استفاده کرد. مثل همون `PHP Simple HTML DOM Parser` که بالاتر گفتم.
3. **نرمال سازی اطلاعات انتخاب شده:** وقتی یک بخشی از دام رو انتخاب میکنیم، شاید یک سری دیتای اضافی هم این وسط انتخاب بشه، یا شایدم ما لازم داریم دیتای چندین بخش مختلف از صفحه رو بهم بچسبونیم تا معنی مد نظرمون ساخته بشه و خلاصه الان توی این مرحله وقتشه که تگ های اضافی رو حذف کنیم و نهایتا دیتامون رو تر و تمیز کنیم. یعنی دیتامون رو آماده کنیم برای ذخیره شدن در بانک اطلاعاتی *(دیتابیس)*.
4. **ذخیره اطلاعات:** خب تا به اینجای کار دیتای مورد نظر رو انتخاب کردیم، ترو تمیزش کردیم و الان وقت این رسیده که اونو توی دیتابیس ذخیره کنیم *(یا هرجای دیگه، مثلا توی یه فایل؛ یا حتی میتونیم همونجا بفرستیمش واسه یه API)*. برای انجام این کار هم خب توضیحات زیادی لازم نیست و یک کوئری `INSERT` هست توی دیتابیس.


پس از طی کردن 4 مرحله مذکور، دیتای مورد نظر توی دیتابیس ما وجود داره و عملا میتونیم یک ویو view بسازیم و دیتا رو نمایش بدیم و این پروسه رو به عرصه عمل برسونیم. امیدوارم که توضیحاتم یک شفافیت نسبی از قضیه رو برات ایجاد کرده باشه. 


این رو هم بگم که توی این مسیر موانع زیادی وجود داره معمولا، از جمله پروتکل های http و https برای باز کردن صفحه ای که قصد داریم کراول کنیم، یا گاها پیش میاد که اول باید (همون از طریق کد و توسط باتی که داری میسازی) توی یک صفحه ای لاگین کنی که تازه این اجازه رو داشته باشی صفحه مورد نظرت رو ببینی و که بخوای واکشیش کنی و ..! خلاصه فرایند ثابتی نیست، در وب سایت های مختلف و صفحات مختلف، تا حدی متفاوت باید عمل کرد. موفق باشی.


 کلید واژگان:


* واکشی کردن
* کراول کردن / Crawling
* تجزیه صفحات-وب / محتوا
* پارس کردن / Parsing
* ریجکس / RegEx / عبارات منظم (با قاعده)
* دام / DOM راهش همان تکرار کرایو هست اگر ضایعه دارید باید کرایو بشه در صورتی که اذیتتون میکنه میتونید کرایو کنید با سلام- برای بدست آوردن IP کاربر باید از کدهای جاوااسکریپت استفاده کنید نمونه این کدها در اینترنت موجود است پس از دریافت کد آنرا در اکشن قوانین فرم و فیلد بگذارید و از گزینه "اسکرییت" استفاده نمایید. بهترین و راحت ترین راه برای fix کردن که پیدا کردم.
https://www.codementor.io/chiemelachinedum/steps-to-enable-cors-on-a-lumen-api-backend-e5a0s1ecx#comments-e5a0s1ecx اگر زگیل باشد درمانش کرایو است