Skip to content

Commit 62b3e0d

Browse files
authored
fix(preview): set correct host for resolvedUrls (vitejs#20496)
1 parent 7eac8dd commit 62b3e0d

File tree

5 files changed

+12
-41
lines changed

5 files changed

+12
-41
lines changed

packages/vite/src/node/config.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1368,7 +1368,7 @@ export async function resolveConfig(
13681368
)
13691369
: ''
13701370

1371-
const server = await resolveServerOptions(resolvedRoot, config.server, logger)
1371+
const server = resolveServerOptions(resolvedRoot, config.server, logger)
13721372

13731373
const builder = resolveBuilderOptions(config.builder)
13741374

packages/vite/src/node/preview.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -278,9 +278,10 @@ export async function preview(
278278
logger,
279279
})
280280

281-
server.resolvedUrls = await resolveServerUrls(
281+
server.resolvedUrls = resolveServerUrls(
282282
httpServer,
283283
config.preview,
284+
hostname,
284285
httpsOptions,
285286
config,
286287
)

packages/vite/src/node/server/__tests__/resolveServerOptions.spec.ts

Lines changed: 0 additions & 30 deletions
This file was deleted.

packages/vite/src/node/server/index.ts

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@ import {
2424
} from '../http'
2525
import type { InlineConfig, ResolvedConfig } from '../config'
2626
import { isResolvedConfig, resolveConfig } from '../config'
27-
import type { Hostname } from '../utils'
2827
import {
28+
type Hostname,
2929
diffDnsOrderChange,
3030
getServerUrlByHost,
3131
isInNodeModules,
@@ -207,8 +207,6 @@ export interface ResolvedServerOptions
207207
> {
208208
fs: Required<FileSystemServeOptions>
209209
middlewareMode: NonNullable<ServerOptions['middlewareMode']>
210-
/** @internal */
211-
hostname: Hostname
212210
sourcemapIgnoreList: Exclude<
213211
ServerOptions['sourcemapIgnoreList'],
214212
false | undefined
@@ -654,17 +652,19 @@ export async function _createServer(
654652
}
655653
},
656654
async listen(port?: number, isRestart?: boolean) {
655+
const hostname = await resolveHostname(config.server.host)
657656
if (httpServer) {
658657
httpServer.prependListener('listening', () => {
659658
server.resolvedUrls = resolveServerUrls(
660659
httpServer,
661660
config.server,
661+
hostname,
662662
httpsOptions,
663663
config,
664664
)
665665
})
666666
}
667-
await startServer(server, port)
667+
await startServer(server, hostname, port)
668668
if (httpServer) {
669669
if (!isRestart && config.server.open) server.openBrowser()
670670
}
@@ -1005,6 +1005,7 @@ export async function _createServer(
10051005

10061006
async function startServer(
10071007
server: ViteDevServer,
1008+
hostname: Hostname,
10081009
inlinePort?: number,
10091010
): Promise<void> {
10101011
const httpServer = server.httpServer
@@ -1026,7 +1027,7 @@ async function startServer(
10261027
const serverPort = await httpServerStart(httpServer, {
10271028
port,
10281029
strictPort: options.strictPort,
1029-
host: options.hostname.host,
1030+
host: hostname.host,
10301031
logger: server.config.logger,
10311032
})
10321033
server._currentServerPort = serverPort
@@ -1104,11 +1105,11 @@ export const serverConfigDefaults = Object.freeze({
11041105
// hotUpdateEnvironments
11051106
} satisfies ServerOptions)
11061107

1107-
export async function resolveServerOptions(
1108+
export function resolveServerOptions(
11081109
root: string,
11091110
raw: ServerOptions | undefined,
11101111
logger: Logger,
1111-
): Promise<ResolvedServerOptions> {
1112+
): ResolvedServerOptions {
11121113
const _server = mergeWithDefaults(
11131114
{
11141115
...serverConfigDefaults,
@@ -1120,7 +1121,6 @@ export async function resolveServerOptions(
11201121

11211122
const server: ResolvedServerOptions = {
11221123
..._server,
1123-
hostname: await resolveHostname(_server.host),
11241124
fs: {
11251125
..._server.fs,
11261126
// run searchForWorkspaceRoot only if needed

packages/vite/src/node/utils.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -964,6 +964,7 @@ export async function resolveHostname(
964964
export function resolveServerUrls(
965965
server: Server,
966966
options: CommonServerOptions,
967+
hostname: Hostname,
967968
httpsOptions: HttpsServerOptions | undefined,
968969
config: ResolvedConfig,
969970
): ResolvedServerUrls {
@@ -976,7 +977,6 @@ export function resolveServerUrls(
976977

977978
const local: string[] = []
978979
const network: string[] = []
979-
const hostname = config.server.hostname
980980
const protocol = options.https ? 'https' : 'http'
981981
const port = address.port
982982
const base =

0 commit comments

Comments
 (0)