• 1403/05/04

خطای 404 با رفرش صفحه :

سلام و خدا قوت

یک پروژه Next نوشتم و روی هاست قرار دادم. الان اگر در مسیری غیر از / باشم، با رفرش صفحه خطای 404 میده. توی لوکال مشکلی نداره. خیلی سرچ کردم. فایل web.config هم ست کرم ولی باز هم درست نشد. این هم محتویات فایل next.config.mjs isj:
 

/** @type {import('next').NextConfig} */

const nextConfig = {

  output: 'export',

  distDir: 'dist',

};

export default nextConfig;

میشه لطفا راهنمایی کنید.

  • 1403/05/04
  • ساعت 13:37

سلام دوست من

این راهکار رو تست کن از این لینک 

به next.config اضافه کن ببین مشکلت برطرف میشه ؟

اگر نشد بگو راهکارهای دیگری رو تست کنیم


  • 1403/05/05
  • ساعت 13:06

ممنونم استاد. این راهکار رو قبلا تست کرده بودم. جواب نداده. انگار وقتی رفرش میشه نمیتونه مسیر رو پیدا کنه. سعی کردم با web.config حلش کنم ولی بازم نشد. این مشکل رو توی vue داشتم قبلا که با web.config حل شد ولی اینجا نمیشه.

راهکار دیگه‌ای داره به نظرتون؟


  • 1403/05/05
  • ساعت 15:18

وقتی میگی web.config یعنی از ISS استفاده میکنی درسته ؟

این تنظیمات رو برای web.config تست کردی ؟

<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="Handle History Mode and custom 404/500" stopProcessing="true">
          <match url=".*" />
          <conditions logicalGrouping="MatchAll">
            <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
            <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
          </conditions>
          <action type="Rewrite" url="/" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>

  • 1403/05/05
  • ساعت 16:05

آره از IIS استفاده میکنم. مشکل حل شد استاد. ایراد از این بود که مسیرهایی که مثلا بصورت 

./requests

هست رو متوجه نمیشه در حالت آنلاین و حتما باید مسیر رو کامل بهش بدم. بصورت زیر باید باشه:

/panel/requests

دلیل خاصی داره؟ یا باید چیزی رو تنظیم کنم؟


  • 1403/05/05
  • ساعت 16:09

با ISS زیاد آشنایی ندارم ولی اکثر وب سرور ها آدرس کامل رو میخوان

برای مثال پروژه رو آنلاین میکنی میبینی که فایل css ها load نمیشن و در لوکال به درستی کار میکنه ولی وقتی آنلاینش میکنی نمایش داده نمیشه 

برای درست کردنش فقط کافیه یک (/) قبل آدرس دهی فایل css اضافه کنی تا وب سرور بتونه بفهمه

اینجور مسائل پیش میاد حالا چون آشنایی زیادی با ISS ندارم نمیدونم که آیا نیاز به پیکربندی خاصی داره یا نه به صورت پیش فرض اینگونه هست


  • 1403/05/05
  • ساعت 16:12

ممنونم استاد از وقتی که گذاشتین


logo-samandehi