You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在GitHub Pages上通过干净URL访问子目录且不包含父文件夹?

保持现有文件夹结构实现简洁URL访问

完全可以做到,不用改动当前的文件夹布局,核心是通过URL重写实现内部转发,不同服务器/平台的配置方式如下:

  • Apache服务器
    在网站根目录创建或编辑.htaccess文件,添加以下规则:

    RewriteEngine On
    # 跳过真实存在的文件和目录,避免影响index.html、scripts等的正常访问
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    # 将/project1这类请求转发到/projects/project1
    RewriteRule ^([^/]+)/?$ /projects/$1 [L]
    

    配置后,访问mywebpage.com/project1时,服务器会内部指向/projects/project1,浏览器地址栏不会改变。

  • Nginx服务器
    在站点的Nginx配置文件的server块中添加规则:

    location / {
        try_files $uri $uri/ /projects$uri;
    }
    

    或者更精准的规则,仅匹配项目类路径:

    location ~ ^/([^/]+)$ {
        try_files $uri $uri/ /projects/$1;
    }
    

    保存配置后重启Nginx即可生效。

  • 静态托管平台(Netlify、Vercel等)

    • Netlify:在根目录创建_redirects文件,写入:
      /* /projects/:splat 200
      
    • Vercel:在根目录创建vercel.json文件,添加:
      {
        "rewrites": [
          { "source": "/:path*", "destination": "/projects/:path*" }
        ]
      }
      

    平台会自动处理URL的内部转发,保持地址栏显示简洁路径。

内容的提问来源于stack exchange,提问作者Fin Harris

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 13:52:04