محمد امیری
4 سال پیش توسط محمد امیری مطرح شد
11 پاسخ

دیپلوی کردن nuxt و لاراول روی یک هاست

سلام
من یه پروژه سمت فرانت زدم که با nuxt و کلا ssr هستش و سمت بک اندشم کلا api با لاراوله. الان خود nuxt یه سرور node.js میخواد که بتونه سمت سرور رندر کنه و لاراولم که سرور دیگه میخواد. این دوتارو چطوری روی یک سرور داشته باشم؟ برای بک اند باید ساب دامین بزنم؟


ثبت پرسش جدید
آرش تقوی
تخصص : برنامه نویس فول استک
@arash.taghavi69 4 سال پیش آپدیت شد
0

اینکه میگین دوتارو چطوری روی یک سرور داشته باشم; کافیه روی وب سرور شما php و node نصب باشه.همین
در مورد هاست های اشتراکی هم دقت کنید که با node به مشکل می خورید.یا باید سرور اختصاصی داشته باشین یا vps.البته گویا جدیدا یه سری سایت ها هستند که مخصوص پروژه های nodejs ی هستند. سرچ کنید قطعا پیداشون میکنید.یکیشون parswebserver.com هست.


احسان الوندی
تخصص : توسعه دهنده وب
@Alvandi 3 سال پیش آپدیت شد
0

@mohammadeng3731
@arash.taghavi69
دوست عزیز با استفاده از nuxt دیگه نیازی به استفاده از خود vue نیست؟


مهدی صفری
تخصص : برنامه نویس php
@mahdisafarydev 3 سال پیش مطرح شد
0

سلام nuxt خروجی static میده و شما دیگه نیازی به هاست nodejs ندارید کافیه بکند رو توی ساب دامین بزارید و ناکست رو توی دامین اصلی


احسان الوندی
تخصص : توسعه دهنده وب
@Alvandi 3 سال پیش آپدیت شد
0

nuxt خروجی static میده و شما دیگه نیازی به هاست nodejs ندارید

@mahdisafarydev
چنانچه بخوام که مثلا اطلاعات یک مقاله رو SEO کنم با توجه به اینکه فرمودی که NUX خروجی STATIC میده چکار باید بکنم؟ (تصورم این هست که قبل از اینکه بخوام داده دریافتی از api رو به html تزریق کنم nuxt یک layoout یا همون html static رو بر میگردونه و من نمیتونم محتوی داده رو seo کنم)


AriaieBOY
تخصص : TALL Stack Lover
@ariaieboy 3 سال پیش مطرح شد
1

متاسفانه اطلاعات لازم را در اختیار نذاشتید.
چون فرمودید چجوری اینها را روی یک سرور داشته باشیم. من فرض را بر این میگیرم که شما حداقل یک vps دارید و میخواهید این موارد را داخل یک سرورمجازی داشته باشید.

در اینصورت پیشنهاد بنده استفاده از داکر و سرویس caprover هست. چراکه خیلی از دردسر های کانفیگی شما را از بین میبرد.
کلیت کار به این صورت میشه که شما 3 تا سرویس داکری تعریف میکنید.
دو سرویس خارجی هست (یعنی از خارج کانتینر باید دسترسی داشته باشید بهش) که یکی میشه فرانت اند شما و سرویس دیگه میشه سرویس بک اند که مربوط به لاراول هست.
برای دسترسی هم میتونید همانطور که گفتید مثلا دامین اصلی را وصل کنید به فرانت و یک ساب دامین متصل کنید به بخش بک اند و روت دهی را به اینصورت انجام بدید.
و خوب کانتینتر داخلی هم که دارید دیتابیس هست که از خارج در دسترس نیست و فقط داخل شبکه داخلی در دسترس هست که وصل میشه به کانتینتر لاراولی شما. به همین راحتی.


مهدی صفری
تخصص : برنامه نویس php
@mahdisafarydev 3 سال پیش مطرح شد
0

@Alvandi همون حالت اصلی nuxt هستش دیگه محتوا و تگ های html رو به خزنده های گوگل بر می گردونه


احسان الوندی
تخصص : توسعه دهنده وب
@Alvandi 3 سال پیش مطرح شد
0

@mahdisafarydev
ببخشید من جوابم رو از توضیحات شما نگرفتم. آیا حالت در ssr nuxt دیتا برگردانده شدن از api رو در سمت سرور render میکنه یا خیر?


مهدی صفری
تخصص : برنامه نویس php
@mahdisafarydev 3 سال پیش مطرح شد
0

می تونی یه تست کنی ببینی که اگه خروجی static دیتای html رو به طور کامل برمی گردونه یعنی حله چون من مشکلی نداشتم از این بابت


AriaieBOY
تخصص : TALL Stack Lover
@ariaieboy 3 سال پیش مطرح شد
1

@Alvandi جناب الوندی عزیز nuxt در ورژن 2 چندین روش رندر صفحات داره که توی ورژن 3 از اونجایی که روی بتا هست هنوز تمام اینها پیاده سازی نشده و کامل نیست و قراره سیستم هیبریدی جدیدی منتشر بشه.

یک مدل حالت SPA هست که خوب واضح هست. شما یک صفحه معمولا خالی html میفرستید برای کاربر با یک اسکریپت جاوااسکریپت بعد لود کامل صفحه این اسکریپت ران میشه اطلاعات مد نظر از هر سورسی باشه دریافت میکنه و صفحه را برای کاربر رندر میکنه.

مدل دوم SSR هست. توی این مدل ما یک تفاوت داریم با SPA و اون هم اولین ریکوئستی هست که کاربر به سایت میزنه.
توی ریکوئست اول بجای اینکه ما یک صفحه خالی بفرستیم سمت کاربر و کاربر روی مرورگر کار رندر را انجام بده. ما داخل سرور اون صفحه را رندر میکنید و صفحه رندر شده را برای کاربر ارسال میکنیم به همراه اسکریپت وقتی صفحه کامل لود بشه اسکریپت ران میشه. و از اون به بعد هر نویگیشنی که انجام بشه مثل spa فقط داده ها از سورس دریافت میشه و رندر سمت مرورگر کاربر انجام میشه.

دلیلشم این هست که مثلا گوگل نمیتونه خیلی راحت این صفحات ایندکس کنه و باعث افت سئو میشه یا نمیشه ابتدای لود صفحه متا تگ ها را دستکاری کرد و باید صبر کنیم اسکریپت جاوااسکریپت لود بشه و این باعث میشه باز توی زمینه سئو ما مشکل داشته باشیم.
مسئله بعدی لود اولیه هست چون شما صفحه خالی میدید به کاربر و کاربر باید کل صفحه را خودش رندر کنه و داده ها را بگیره از سورس معمولا خیلی طول میکشه و ممکنه کاربر از سایت خارج بشه به همین خاطر میاییم و از ssr استفاده می کنیم.

مدل بعدی حالت pre-load یا static generation هست که برای سایت های ایستا مناسب هست. توی این روش قبل از استقرار شما تمام صفحات تک تک رندر میکنید و فقط همان صفحات رندر شده را در قالب چند فایل .html آپلود میکنید. و خوب این روش به درد سایت های با محتوای پویا نمیخوره.
البته میشه از ترکیب اینها استفاده کرد و توی nuxt 3 دقیقا قرار هست مدل هیبریدی از این 3 تا ارائه بشه. که شما مشخص کنید هرجا از کدوم روش استفاده بشه.
و خوب هرکدوم برای جا و مکان خاص خودش کاربرد داره.

اینجا دوست عزیزمون میخوان از SSR استفاده کنند که لازم داره یک سرور nodejs داشته باشیم که کار رندر صفحات انجام بده.


Mohamad Fashai
@mohamadd.fashai 2 سال پیش مطرح شد
0

@ariaieboy
ببخشید منم یک همچین مشکلی داشتم من یه vps دارم پروژه ی لاراول که api روی ساب دامینه و مشکلی نداره node js هم نصب کردم و پروژه ی فرانتم رو با quasar به صورت ssr بیلد گرفتم و وقتی با sshوصل میشم که پروژه رو ران کنم بدون هیچ مشکلی ران میشه ولی دامین اصلی رو که بالا میارم ارور ۴۰۳ permission denied میده پروژه رو تنظیم کردم که روی پورت ۳۰۰۰ بالا بیاد ولی هیچ دسترسی بهش ندارم ممنون میشم کمک کنید بگین باید چه پروسه ای رو طی کنم تا روی دامین بالا بیاد


ابوالفضل
تخصص : برنامه نويس
@amata 2 سال پیش مطرح شد
0

از liara.ir استفاده کن


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام