בירור | הרצת כמה סקריפטים במקביל
-
@עידו300 קודם כל אם הם מאזינים על פורט לא נהוג לכנות את זה סקריפט אלא אפליקציה
בהנחה שמדובר על אפליקציות בלי קשר ביניהן, אתה אמור להשתמש בweb server כמו caddy (מומלץ בחום!), nginx, apache וכולי, הוא בעצם מאזין על פורט 80 ו-443 ומעביר את התעבורה לפורט הפנימי המתאים (reverse proxy) -
@עידו300 קודם כל אם הם מאזינים על פורט לא נהוג לכנות את זה סקריפט אלא אפליקציה
בהנחה שמדובר על אפליקציות בלי קשר ביניהן, אתה אמור להשתמש בweb server כמו caddy (מומלץ בחום!), nginx, apache וכולי, הוא בעצם מאזין על פורט 80 ו-443 ומעביר את התעבורה לפורט הפנימי המתאים (reverse proxy)@צדיק-תמים כתב בבירור | הרצת כמה סקריפטים במקביל:
caddy
כמובן שזה מצריך לרכוש דומיין, ולא מאפשר להשתמש בIP הגולמי אם זה מה שהשתמשו בו עד עכשיו איך שזה נשמע (בngisk יש כמדומני גם אפשרות לקבל תת דומיין אקראי זמני, את השאר אני לא מכיר)
-
@עידו300 קודם כל אם הם מאזינים על פורט לא נהוג לכנות את זה סקריפט אלא אפליקציה
בהנחה שמדובר על אפליקציות בלי קשר ביניהן, אתה אמור להשתמש בweb server כמו caddy (מומלץ בחום!), nginx, apache וכולי, הוא בעצם מאזין על פורט 80 ו-443 ומעביר את התעבורה לפורט הפנימי המתאים (reverse proxy)@צדיק-תמים כתב בבירור | הרצת כמה סקריפטים במקביל:
קודם כל אם הם מאזינים על פורט לא נהוג לכנות את זה סקריפט אלא אפליקציה
@צדיק-תמים כתב בבירור | הרצת כמה סקריפטים במקביל:
בהנחה שמדובר על אפליקציות בלי קשר ביניהן,
יש קשר ביניהם, זה חלק שונה של אותה מערכת, חלק אחד אחראי על הוספת מודעות וחלק שני אחראי על הניהול (הצגה/עריכה/מחיקה), ויהיו עוד חלקים אבל של אותה המערכת.
אתה אמור להשתמש בweb server כמו caddy (מומלץ בחום!), nginx, apache וכולי, הוא בעצם מאזין על פורט 80 ו-443 ומעביר את התעבורה לפורט הפנימי המתאים (reverse proxy)
מה זה משנה אם אני מפנה לפורט דרך web server (סייבר פאנל אצלי) או שפשוט נגשים לפורט? תכלס רק אפליקציה אחת יכולה להאזין לפורט כל פעם.
-
@צדיק-תמים כתב בבירור | הרצת כמה סקריפטים במקביל:
caddy
כמובן שזה מצריך לרכוש דומיין, ולא מאפשר להשתמש בIP הגולמי אם זה מה שהשתמשו בו עד עכשיו איך שזה נשמע (בngisk יש כמדומני גם אפשרות לקבל תת דומיין אקראי זמני, את השאר אני לא מכיר)
@ע-ה-דכו-ע יש לי דומיין
-
@צדיק-תמים כתב בבירור | הרצת כמה סקריפטים במקביל:
קודם כל אם הם מאזינים על פורט לא נהוג לכנות את זה סקריפט אלא אפליקציה
@צדיק-תמים כתב בבירור | הרצת כמה סקריפטים במקביל:
בהנחה שמדובר על אפליקציות בלי קשר ביניהן,
יש קשר ביניהם, זה חלק שונה של אותה מערכת, חלק אחד אחראי על הוספת מודעות וחלק שני אחראי על הניהול (הצגה/עריכה/מחיקה), ויהיו עוד חלקים אבל של אותה המערכת.
אתה אמור להשתמש בweb server כמו caddy (מומלץ בחום!), nginx, apache וכולי, הוא בעצם מאזין על פורט 80 ו-443 ומעביר את התעבורה לפורט הפנימי המתאים (reverse proxy)
מה זה משנה אם אני מפנה לפורט דרך web server (סייבר פאנל אצלי) או שפשוט נגשים לפורט? תכלס רק אפליקציה אחת יכולה להאזין לפורט כל פעם.
@עידו300 כתב בבירור | הרצת כמה סקריפטים במקביל:
@צדיק-תמים כתב בבירור | הרצת כמה סקריפטים במקביל:
קודם כל אם הם מאזינים על פורט לא נהוג לכנות את זה סקריפט אלא אפליקציה
@צדיק-תמים כתב בבירור | הרצת כמה סקריפטים במקביל:
בהנחה שמדובר על אפליקציות בלי קשר ביניהן,
יש קשר ביניהם, זה חלק שונה של אותה מערכת, חלק אחד אחראי על הוספת מודעות וחלק שני אחראי על הניהול (הצגה/עריכה/מחיקה), ויהיו עוד חלקים אבל של אותה המערכת.
אתה אמור להשתמש בweb server כמו caddy (מומלץ בחום!), nginx, apache וכולי, הוא בעצם מאזין על פורט 80 ו-443 ומעביר את התעבורה לפורט הפנימי המתאים (reverse proxy)
מה זה משנה אם אני מפנה לפורט דרך web server (סייבר פאנל אצלי) או שפשוט נגשים לפורט? תכלס רק אפליקציה אחת יכולה להאזין לפורט כל פעם.
הנתב אמור להפנות כל כתובת שנכנסים דרכה לפורט מנימי אחר.
לדוגמה, יש לך 3 תתי דומיין שכולם מפנים לIP הראשי של השרת בפורט 443, ואם נכנסים דרך כתובת A.CO.IL הCaddy מפנה לפורט הפנימי 3000 (בלי לפתוח אותו עצמו לבחוץ). ואם נכנסים דרך כתובת B.CO.IL אז הוא מפנה לפורט הפנימי 4567 וכו.
-
@עידו300 כתב בבירור | הרצת כמה סקריפטים במקביל:
@צדיק-תמים כתב בבירור | הרצת כמה סקריפטים במקביל:
קודם כל אם הם מאזינים על פורט לא נהוג לכנות את זה סקריפט אלא אפליקציה
@צדיק-תמים כתב בבירור | הרצת כמה סקריפטים במקביל:
בהנחה שמדובר על אפליקציות בלי קשר ביניהן,
יש קשר ביניהם, זה חלק שונה של אותה מערכת, חלק אחד אחראי על הוספת מודעות וחלק שני אחראי על הניהול (הצגה/עריכה/מחיקה), ויהיו עוד חלקים אבל של אותה המערכת.
אתה אמור להשתמש בweb server כמו caddy (מומלץ בחום!), nginx, apache וכולי, הוא בעצם מאזין על פורט 80 ו-443 ומעביר את התעבורה לפורט הפנימי המתאים (reverse proxy)
מה זה משנה אם אני מפנה לפורט דרך web server (סייבר פאנל אצלי) או שפשוט נגשים לפורט? תכלס רק אפליקציה אחת יכולה להאזין לפורט כל פעם.
הנתב אמור להפנות כל כתובת שנכנסים דרכה לפורט מנימי אחר.
לדוגמה, יש לך 3 תתי דומיין שכולם מפנים לIP הראשי של השרת בפורט 443, ואם נכנסים דרך כתובת A.CO.IL הCaddy מפנה לפורט הפנימי 3000 (בלי לפתוח אותו עצמו לבחוץ). ואם נכנסים דרך כתובת B.CO.IL אז הוא מפנה לפורט הפנימי 4567 וכו.
@ע-ה-דכו-ע השאלה אם אין דרך מקובלת לעשות בלי לתפוס מלא פורטים, נראה לי לא הגיוני שכל אפליקציה/סקריפט יתפוס פורט.
הבינה מלאכותית הציעה משהו כזה
import express from 'express'; import manageSellers from './manageSellersAd.js'; import addAd from './addAd.js'; const app = express(); app.use(express.json()); // כל קובץ מטפל בנתיב שונה app.use('/manage', manageSellers); app.use('/add', addAd); // מאזין לפורט אחד בלבד app.listen(3000, () => console.log('Main server running on port 3000'));
עוד אפליקציה שתתפוס ותנתב, אבל אני לא יודע איך זה מסתדר עם הספריה של ימות המשיח, איך זה מחזיר תשובות, אם זה לא יטחן לי את המעבד שגם ככה נטחן בגלל הNODE, איזה שינויים צריך בשאר האפליקציות. בקיצור צריך להבין את הנושא.
-
@ע-ה-דכו-ע השאלה אם אין דרך מקובלת לעשות בלי לתפוס מלא פורטים, נראה לי לא הגיוני שכל אפליקציה/סקריפט יתפוס פורט.
הבינה מלאכותית הציעה משהו כזה
import express from 'express'; import manageSellers from './manageSellersAd.js'; import addAd from './addAd.js'; const app = express(); app.use(express.json()); // כל קובץ מטפל בנתיב שונה app.use('/manage', manageSellers); app.use('/add', addAd); // מאזין לפורט אחד בלבד app.listen(3000, () => console.log('Main server running on port 3000'));
עוד אפליקציה שתתפוס ותנתב, אבל אני לא יודע איך זה מסתדר עם הספריה של ימות המשיח, איך זה מחזיר תשובות, אם זה לא יטחן לי את המעבד שגם ככה נטחן בגלל הNODE, איזה שינויים צריך בשאר האפליקציות. בקיצור צריך להבין את הנושא.
@עידו300 אתה מתכוון לא לתפוס גם פורטים פנימיים?
איך שהבנתי עכשיו אתה מדבר על אותה אפליקציה עצמה, ברור שהיא אמורה להאזין רק לפורט אחד, ולפתוח נתיבים נפרדים של GET וPOST
למה בכלל אתה עושה את זה בסקריפטים נפרדים? צריך לסדר את זה כאפליקציה אחת (בקבצים נפרדים בצורה מודולרית, אבל בסופו של דבר זה צריך להיות אפליקציה אחת).לדוגמה:
app.get('/login', (req, res) => { res.render('login', { error: null }); }); app.post('/login', (req, res) => { if (req.body.password === process.env.ADMIN_PASSWORD) { req.session.loggedIn = true; res.redirect('/admin'); } else { res.render('login', { error: 'סיסמה שגויה' }); } });
העתקתי ממשהו שהיה לי כבר, אבל תפוס את העיקרון.
מצא את ההבדלים מהדוגמה שהבאת מהבינה.
-
@עידו300 אתה מתכוון לא לתפוס גם פורטים פנימיים?
איך שהבנתי עכשיו אתה מדבר על אותה אפליקציה עצמה, ברור שהיא אמורה להאזין רק לפורט אחד, ולפתוח נתיבים נפרדים של GET וPOST
למה בכלל אתה עושה את זה בסקריפטים נפרדים? צריך לסדר את זה כאפליקציה אחת (בקבצים נפרדים בצורה מודולרית, אבל בסופו של דבר זה צריך להיות אפליקציה אחת).לדוגמה:
app.get('/login', (req, res) => { res.render('login', { error: null }); }); app.post('/login', (req, res) => { if (req.body.password === process.env.ADMIN_PASSWORD) { req.session.loggedIn = true; res.redirect('/admin'); } else { res.render('login', { error: 'סיסמה שגויה' }); } });
העתקתי ממשהו שהיה לי כבר, אבל תפוס את העיקרון.
מצא את ההבדלים מהדוגמה שהבאת מהבינה.
@ע-ה-דכו-ע כי אני לא יודע בפועל איך לעשות את זה (פעם ראשונה שלי בnodejs) ואני מפחד שאם יכנסו כמה ביחד המערכת תקרוס, ראיתי שהnode בזבזני מאוד הרבה הרבה יותר מPHP.
-
@עידו300 אתה מתכוון לא לתפוס גם פורטים פנימיים?
איך שהבנתי עכשיו אתה מדבר על אותה אפליקציה עצמה, ברור שהיא אמורה להאזין רק לפורט אחד, ולפתוח נתיבים נפרדים של GET וPOST
למה בכלל אתה עושה את זה בסקריפטים נפרדים? צריך לסדר את זה כאפליקציה אחת (בקבצים נפרדים בצורה מודולרית, אבל בסופו של דבר זה צריך להיות אפליקציה אחת).לדוגמה:
app.get('/login', (req, res) => { res.render('login', { error: null }); }); app.post('/login', (req, res) => { if (req.body.password === process.env.ADMIN_PASSWORD) { req.session.loggedIn = true; res.redirect('/admin'); } else { res.render('login', { error: 'סיסמה שגויה' }); } });
העתקתי ממשהו שהיה לי כבר, אבל תפוס את העיקרון.
מצא את ההבדלים מהדוגמה שהבאת מהבינה.
@ע-ה-דכו-ע לא הבנתי את הענין של get וpost, מבחינתי הכל יכול להיות get, ואם זה בשביל שיהיו 2 אפשרויות, אז אני צריך יותר... עוד לא יודע בדיוק כמה אבל לדעתי איזה 4-5
אני מבין מהבינה מלאכותית שהאפליקציה ההיא תנתב בפנים את הבקשה ככה שלא יצטרכו להאזין לפורט
-
@ע-ה-דכו-ע כי אני לא יודע בפועל איך לעשות את זה (פעם ראשונה שלי בnodejs) ואני מפחד שאם יכנסו כמה ביחד המערכת תקרוס, ראיתי שהnode בזבזני מאוד הרבה הרבה יותר מPHP.
@עידו300 למה אתה חושב שאם תבנה כמה אפליקציות זה יהיה בזבזני פחות מאפליקציה אחת?
-
@ע-ה-דכו-ע לא הבנתי את הענין של get וpost, מבחינתי הכל יכול להיות get, ואם זה בשביל שיהיו 2 אפשרויות, אז אני צריך יותר... עוד לא יודע בדיוק כמה אבל לדעתי איזה 4-5
אני מבין מהבינה מלאכותית שהאפליקציה ההיא תנתב בפנים את הבקשה ככה שלא יצטרכו להאזין לפורט
@עידו300 כתב בבירור | הרצת כמה סקריפטים במקביל:
@ע-ה-דכו-ע לא הבנתי את הענין של get וpost, מבחינתי הכל יכול להיות get, ואם זה בשביל שיהיו 2 אפשרויות, אז אני צריך יותר... עוד לא יודע בדיוק כמה אבל לדעתי איזה 4-5
אפשר לעשות כמה GET וכמה POST רק במקום LOGIN שבדוגמה אתה כותב בכל אחד נתיב מתאים.
באופן כללי POST זה כשאתה רוצה לשלוח מידע לשרת, וGET זה כשאתה רוצה לקבל מידע.
-
@עידו300 למה אתה חושב שאם תבנה כמה אפליקציות זה יהיה בזבזני פחות מאפליקציה אחת?
@A0533057932 נראה לי פחות כבד 4 קטנים מאחת מסורבלת
-
@ע-ה-דכו-ע לא הבנתי את הענין של get וpost, מבחינתי הכל יכול להיות get, ואם זה בשביל שיהיו 2 אפשרויות, אז אני צריך יותר... עוד לא יודע בדיוק כמה אבל לדעתי איזה 4-5
אני מבין מהבינה מלאכותית שהאפליקציה ההיא תנתב בפנים את הבקשה ככה שלא יצטרכו להאזין לפורט
-
@עידו300 כתב בבירור | הרצת כמה סקריפטים במקביל:
@ע-ה-דכו-ע לא הבנתי את הענין של get וpost, מבחינתי הכל יכול להיות get, ואם זה בשביל שיהיו 2 אפשרויות, אז אני צריך יותר... עוד לא יודע בדיוק כמה אבל לדעתי איזה 4-5
אפשר לעשות כמה GET וכמה POST רק במקום LOGIN שבדוגמה אתה כותב בכל אחד נתיב מתאים.
באופן כללי POST זה כשאתה רוצה לשלוח מידע לשרת, וGET זה כשאתה רוצה לקבל מידע.
@ע-ה-דכו-ע כן, את זה איך עושים (הניתוב)?
-
@A0533057932 נראה לי פחות כבד 4 קטנים מאחת מסורבלת
@עידו300 כתב בבירור | הרצת כמה סקריפטים במקביל:
@A0533057932 נראה לי פחות כבד 4 קטנים מאחת מסורבלת
0
ע
עידו300
@ע-ה-דכו-ע לא הבנתי את הענין של get וpost, מבחינתי הכל יכול להיות get, ואם זה בשביל שיהיו 2 אפשרויות, אז אני צריך יותר... עוד לא יודע בדיוק כמה אבל לדעתי איזה 4-5אני מבין מהבינה מלאכותית שהאפליקציה ההיא תנתב בפנים את הבקשה ככה שלא יצטרכו להאזין לפורט
תחפור עוד קצת על הבסיס של נוד,
מה שאתה מחפש זה לא להריץ סקריפטים, אלא אפלקציית נוד.
תנסה להבין עוד קצת על הבסיס, ואז הכל יסתדר לך..
בהצלחה.
-
@ע-ה-דכו-ע כן, את זה איך עושים (הניתוב)?
@עידו300 בפייתון עושים על ידי FASTAPI למשל
בNODE אמור להיות דברים דומים -
@ע-ה-דכו-ע כן, את זה איך עושים (הניתוב)?
@עידו300 כתב בבירור | הרצת כמה סקריפטים במקביל:
@ע-ה-דכו-ע כן, את זה איך עושים (הניתוב)?
לדוגמה
app.get('/login', (req, res) => { res.render('login', { error: null }); }); app.get('/logout', (req, res) => { res.render('logout', { error: null }); }); app.get('/register', (req, res) => { res.render('register', { error: null }); });
ככה פתוח לך הכתובות הבאות:
x.com/login
x.com/logout
x.com/register -
@עידו300 כתב בבירור | הרצת כמה סקריפטים במקביל:
@ע-ה-דכו-ע כן, את זה איך עושים (הניתוב)?
לדוגמה
app.get('/login', (req, res) => { res.render('login', { error: null }); }); app.get('/logout', (req, res) => { res.render('logout', { error: null }); }); app.get('/register', (req, res) => { res.render('register', { error: null }); });
ככה פתוח לך הכתובות הבאות:
x.com/login
x.com/logout
x.com/register@ע-ה-דכו-ע טוב, אח"כ אחפור קצ תלראות מה עושה מה שאתה כתבת ומה עושה מה שכתבה לי הבינה, אולי זה הפתרון.
תודה לכולם!