Маршрут индекса Next.js возвращает 404

У меня возникла проблема с запуском моего приложения nextjs на моем рабочем сервере. Я перенаправляю его через htaccess следующим кодом:

RewriteRule ^(.*) http://127.0.0.1:1338/$1

Каждый маршрут работает отлично: /blog,/blog/:id, /about и т.д.
Просто "/" не работает при рендеринге с сервера. Я могу без проблем перейти к нему после загрузки другого маршрута. Я также могу вызвать его с помощью /показатель, но не с помощью мойдомен.tld.

У кого-нибудь есть идея?

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
0
1 250
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Вы пытаетесь перенаправить с помощью модуля Apache, но, похоже, вы используете Node.js

Попробуйте посмотреть на nodejs эквивалент этого .htaccess

Это правда, потому что на сервере работает апач, и я должен заставить его перенаправить на правильный порт, который прослушивает экспресс-приложение.

M. Ernst 10.02.2019 13:12
Ответ принят как подходящий

Проблема возникает, когда Apache пытается передать файл index.html следующему маршрутизатору, который возвращает ошибку.

Добавление DirectoryIndex disabled в файл .htaccess решает проблему.

Вот полный .htaccess для реализации приложения Node.js с перенаправлением Apache.

RewriteEngine On

# Need to disable DirectoryIndex to avoid rewriting directory URL to index.html
DirectoryIndex disabled

# Redirect home page request to the NextJS server
RewriteCond %{REQUEST_URI} ^/$
RewriteRule ^(.*)$ http://127.0.0.1:4002/ [P,L]

# Redirect all other requests to the NextJS server with the URI appended
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ http://127.0.0.1:4002/$1 [P,L]

Другие вопросы по теме