اذهب إلى المحتوى
  • 0

حل مشكلة {"status":404,"msg":"can't find this route : / on server"} لموقع node js

أنس أسامة

السؤال

السلام عليكم

اخواني اعاني من مشكلة بعمل موقع

https://daressly.com/

يظهر عندي مشكلة

{"status":404,"msg":"can't find this route : / on server"}

على العلم node js مفعل بالسيرفر و اللوحة ومفعل على الموقع

ارجو المساعدة بحل المشكلة وشكرا

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 0

تحقق من المسار الرئيسي في ملف المسارات لديك، هل يوجد مسار كالتالي؟ على إفتراض أنك تستخدم express.js

app.get('/', (req, res) => {
  // قم بمعالجة المسار "/" هنا
});

فالخادم يعمل لكن ويخبرك أنه لا يوجد المسار الذي طلبته.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

السلام عليكم ,

هذا معناة ان الserver يعمل بشكل صحيح ولكن يوجد مشكلة في الكود نفسة .
تأكد من أن الخادم node js يعمل على port 8080 او البورت الأساسي للموقع 

و ليس على بورت أخر خاص بالdevelopment 

اذا كنت تستعمل api فتأكد من أضافة /api للroutes التي تريدها 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ On 19‏/12‏/2023 at 20:27 قال Mustafa Suleiman:
app.get('/', (req, res) => {
  // قم بمعالجة المسار "/" هنا
});

 

لا يوجد هذا الكود نهائيا بالملف تفضل هذا الكود الكامل بالملف

 

/*!
 * express
 * Copyright(c) 2009-2013 TJ Holowaychuk
 * Copyright(c) 2013 Roman Shtylman
 * Copyright(c) 2014-2015 Douglas Christopher Wilson
 * MIT Licensed
 */

'use strict';

/**
 * Module dependencies.
 */

var bodyParser = require('body-parser')
var EventEmitter = require('events').EventEmitter;
var mixin = require('merge-descriptors');
var proto = require('./application');
var Route = require('./router/route');
var Router = require('./router');
var req = require('./request');
var res = require('./response');

/**
 * Expose `createApplication()`.
 */

exports = module.exports = createApplication;

/**
 * Create an express application.
 *
 * @return {Function}
 * @api public
 */

function createApplication() {
  var app = function(req, res, next) {
    app.handle(req, res, next);
  };

  mixin(app, EventEmitter.prototype, false);
  mixin(app, proto, false);

  // expose the prototype that will get set on requests
  app.request = Object.create(req, {
    app: { configurable: true, enumerable: true, writable: true, value: app }
  })

  // expose the prototype that will get set on responses
  app.response = Object.create(res, {
    app: { configurable: true, enumerable: true, writable: true, value: app }
  })

  app.init();
  return app;
}

/**
 * Expose the prototypes.
 */

exports.application = proto;
exports.request = req;
exports.response = res;

/**
 * Expose constructors.
 */

exports.Route = Route;
exports.Router = Router;

/**
 * Expose middleware
 */

exports.json = bodyParser.json
exports.query = require('./middleware/query');
exports.raw = bodyParser.raw
exports.static = require('serve-static');
exports.text = bodyParser.text
exports.urlencoded = bodyParser.urlencoded

/**
 * Replace removed middleware with an appropriate error message.
 */

var removedMiddlewares = [
  'bodyParser',
  'compress',
  'cookieSession',
  'session',
  'logger',
  'cookieParser',
  'favicon',
  'responseTime',
  'errorHandler',
  'timeout',
  'methodOverride',
  'vhost',
  'csrf',
  'directory',
  'limit',
  'multipart',
  'staticCache'
]

removedMiddlewares.forEach(function (name) {
  Object.defineProperty(exports, name, {
    get: function () {
      throw new Error('Most middleware (like ' + name + ') is no longer bundled with Express and must be installed separately. Please see https://github.com/senchalabs/connect#middleware.');
    },
    configurable: true
  });
});

بانتظار المساعدة

بتاريخ On 20‏/12‏/2023 at 10:19 قال Ahmed Elmrsawy:

السلام عليكم ,

هذا معناة ان الserver يعمل بشكل صحيح ولكن يوجد مشكلة في الكود نفسة .
تأكد من أن الخادم node js يعمل على port 8080 او البورت الأساسي للموقع 

و ليس على بورت أخر خاص بالdevelopment 

اذا كنت تستعمل api فتأكد من أضافة /api للroutes التي تريدها 

البورت يعمل بشكل صحيح 

كيف يمكنني اضافة api للroutes

احد المبرمجين قال لي

بص علشان routing ميعملش مشكله بلغ المبرمج يعمل api علي ساب دومين والفرونت ايند يعملها علي الدومين مباشره علشان كدا هتفتضل مشكله الروتينج موجوده

كيف

 يمكنني عمل ما يقول باي ملفات علي تعديلها ارجو وضع شرح مفصل فلست خبيرا node js وشكرا جزيلا

بانتظار المساعدة

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 30 دقائق مضت قال Mustafa Suleiman:

ما الذي يوجد في ملفي router وroute لديك؟ من الأفضل إرفاق مجلد المشروع لتفقد المشكلة.

ملف router هذا محتواه

/*!
 * express
 * Copyright(c) 2009-2013 TJ Holowaychuk
 * Copyright(c) 2013 Roman Shtylman
 * Copyright(c) 2014-2015 Douglas Christopher Wilson
 * MIT Licensed
 */

'use strict';

/**
 * Module dependencies.
 * @private
 */

var debug = require('debug')('express:router:route');
var flatten = require('array-flatten');
var Layer = require('./layer');
var methods = require('methods');

/**
 * Module variables.
 * @private
 */

var slice = Array.prototype.slice;
var toString = Object.prototype.toString;

/**
 * Module exports.
 * @public
 */

module.exports = Route;

/**
 * Initialize `Route` with the given `path`,
 *
 * @param {String} path
 * @public
 */

function Route(path) {
  this.path = path;
  this.stack = [];

  debug('new %o', path)

  // route handlers for various http methods
  this.methods = {};
}

/**
 * Determine if the route handles a given method.
 * @private
 */

Route.prototype._handles_method = function _handles_method(method) {
  if (this.methods._all) {
    return true;
  }

  var name = method.toLowerCase();

  if (name === 'head' && !this.methods['head']) {
    name = 'get';
  }

  return Boolean(this.methods[name]);
};

/**
 * @return {Array} supported HTTP methods
 * @private
 */

Route.prototype._options = function _options() {
  var methods = Object.keys(this.methods);

  // append automatic head
  if (this.methods.get && !this.methods.head) {
    methods.push('head');
  }

  for (var i = 0; i < methods.length; i++) {
    // make upper case
    methods[i] = methods[i].toUpperCase();
  }

  return methods;
};

/**
 * dispatch req, res into this route
 * @private
 */

Route.prototype.dispatch = function dispatch(req, res, done) {
  var idx = 0;
  var stack = this.stack;
  var sync = 0

  if (stack.length === 0) {
    return done();
  }

  var method = req.method.toLowerCase();
  if (method === 'head' && !this.methods['head']) {
    method = 'get';
  }

  req.route = this;

  next();

  function next(err) {
    // signal to exit route
    if (err && err === 'route') {
      return done();
    }

    // signal to exit router
    if (err && err === 'router') {
      return done(err)
    }

    // max sync stack
    if (++sync > 100) {
      return setImmediate(next, err)
    }

    var layer = stack[idx++]

    // end of layers
    if (!layer) {
      return done(err)
    }

    if (layer.method && layer.method !== method) {
      next(err)
    } else if (err) {
      layer.handle_error(err, req, res, next);
    } else {
      layer.handle_request(req, res, next);
    }

    sync = 0
  }
};

/**
 * Add a handler for all HTTP verbs to this route.
 *
 * Behaves just like middleware and can respond or call `next`
 * to continue processing.
 *
 * You can use multiple `.all` call to add multiple handlers.
 *
 *   function check_something(req, res, next){
 *     next();
 *   };
 *
 *   function validate_user(req, res, next){
 *     next();
 *   };
 *
 *   route
 *   .all(validate_user)
 *   .all(check_something)
 *   .get(function(req, res, next){
 *     res.send('hello world');
 *   });
 *
 * @param {function} handler
 * @return {Route} for chaining
 * @api public
 */

Route.prototype.all = function all() {
  var handles = flatten(slice.call(arguments));

  for (var i = 0; i < handles.length; i++) {
    var handle = handles[i];

    if (typeof handle !== 'function') {
      var type = toString.call(handle);
      var msg = 'Route.all() requires a callback function but got a ' + type
      throw new TypeError(msg);
    }

    var layer = Layer('/', {}, handle);
    layer.method = undefined;

    this.methods._all = true;
    this.stack.push(layer);
  }

  return this;
};

methods.forEach(function(method){
  Route.prototype[method] = function(){
    var handles = flatten(slice.call(arguments));

    for (var i = 0; i < handles.length; i++) {
      var handle = handles[i];

      if (typeof handle !== 'function') {
        var type = toString.call(handle);
        var msg = 'Route.' + method + '() requires a callback function but got a ' + type
        throw new Error(msg);
      }

      debug('%s %o', method, this.path)

      var layer = Layer('/', {}, handle);
      layer.method = method;

      this.methods[method] = true;
      this.stack.push(layer);
    }

    return this;
  };
});

لا يوجد ملف route

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 1 ساعة قال أنس أسامة:

بانتظار المساعدة

من الأفضل إرفاق مجلد المشروع لكي يتم مساعدتك فحاليًا الأمر مبهم ومن الصعب تحديد سبب المشكلة بدون تفقد كامل كود المشروع.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 58 دقائق مضت قال Mustafa Suleiman:

من الأفضل إرفاق مجلد المشروع لكي يتم مساعدتك فحاليًا الأمر مبهم ومن الصعب تحديد سبب المشكلة بدون تفقد كامل كود المشروع.

الانترنت عندي ضعيف جدا وهو باقة محدودة لا استطيع رفع المشروع لهذا كيف يمكن اعادة توجيه api علي ساب دومين والفرونت ايند يعملها علي الدومين مباشره

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

لقد قمت بعمل بعض التعديلات فاصبح يظهر لي 

Service Unavailable
The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.

هل يوجد حل ارجو المساعدة

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...