설치
npm install @nestjs/serve-static
정적 페이지 제공
ServeStaticModule
을 통해 정적 페이지를 제공할 수 있다.
- 루트
AppModule
에 ServeStaticModule
을 import 하고
- forRoot 메소드를 통해 경로 지정
- rootPath 는 정적 파일들의 경로 (기본값은 client. 아래 예제에선 static)
- 기본 renderPath 는 * (모든 경로) 이고, 기본적으로 index.html 을 응답
import { Module } from '@nestjs/common';
import { ServeStaticModule } from '@nestjs/serve-static';
import { join } from 'path';
import { AppController } from './app.controller';
@Module({
imports: [
ServeStaticModule.forRoot({
rootPath: join(__dirname, '..', 'static'),
exclude: ['/api*'],
}),
],
controllers: [AppController],
})
export class AppModule {}
- 정적 페이지 서빙을 위한 Module 을 따로 정의하고
AppModule
에서 import 하면 보다 간결해진다.
@Module({
imports: [
ServeStaticModule.forRoot({
rootPath: join(__dirname, '../../', 'static'),
exclude: ['/api*'],
}),
]
})
export class StaticPageModule { }
@Module({
imports: [
...
StaticPageModule,
...
],
..
})
export class AppModule {
...
}
reference