没有不值得去解决的问题,也没有不值得去学习的技术!

/page-editor/?pageid=1833011727099722 Returns 200. /page-editor/mobile?pageid=1833011727099722&type=mobile Now Returns 404. How to Fix?

/page-editor/mobile?pageid=1833011727099722&type=mobile now opens with a 404 response

作者:

在

, ,

1. /page-editor/?pageid=1833011727099722 opens with a 200 response. See Figure 1.

/page-editor/?pageid=1833011727099722 opens with a 200 response
Figure 1

2. /page-editor/mobile?pageid=1833011727099722&type=mobile now opens with a 404 response. See Figure 2.

/page-editor/mobile?pageid=1833011727099722&type=mobile now opens with a 404 response
Figure 2

3. Currently, the directory backend\web\page-editor contains only an index.html file. page-editor is implemented based on Vue. The existing Nginx configuration is as follows:

Nginx

	# 1. 页面编辑器的 vue history 模式处理
    location /page-editor/ {
        try_files $uri $uri/ /page-editor/index.html;
    }

	# 2. 静态资源支持
    location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|ttf|woff|woff2|eot|otf)$ {
        try_files $uri =404;
        expires 30d;
        access_log off;
    }

4. When Nginx matches /page-editor/mobile, it does not use the /page-editor/ location; because there is no /page-editor/mobile/index.html or corresponding file at the physical path, it returns a 404.

5. Solution: Use prefix matching to cover subpaths. Modify the Nginx configuration to use regex matching or broader path matching. /page-editor/mobile?pageid=1833011727099722&type=mobile returns a 200 response, as expected. See Figure 3.

Solution: Use prefix matching to cover subpaths. Modify the Nginx configuration to use regex matching or broader path matching. /page-editor/mobile?pageid=1833011727099722&type=mobile returns a 200 response, as expected
Figure 3
Nginx

	# Vue history 模式,支持嵌套路由如 /page-editor/mobile
	location ^~ /page-editor/ {
		root C:/wwwroot/official-website-management-system/src/backend/web;  # 确保此处为 index.html 所在目录
		index index.html;
		try_files $uri $uri/ /page-editor/index.html;
	}

关于作者 · 持续学习与技术实践

我是一名拥有 15 年以上开发经验的技术从业者,自 2013 年起持续运营个人技术博客,记录工作与个人项目中遇到的真实问题,以及解决问题过程中的探索、实践和思考。

除了技术写作,我也在持续开发和维护自己的独立项目,探索新技术和新工具在实际场景中的应用。我始终相信,没有不值得去解决的问题,也没有不值得去学习的技术。

如果这篇文章对你有所帮助,欢迎浏览博客中的其他文章,也欢迎交流技术经验与想法。

关于我  ·  GitHub  ·  邮件联系