github项目子目录重定向到自定义域

时间:2017-04-25 03:36:26

标签: redirect github dns github-pages subdirectory

我在这里有一个github项目页面: lwymarie.github.io/QPQ_Web/Quasars_Probing_Quasars/Welcome.html

该项目名为QPQ_Web。其中有一个index.html文件,它指向子目录Quasars_Probing_Quasars中的Welcome.html文件,其中还存储了所有其他html文件。

我想通过www.qpqsurvey.org替换整个网址的lwymarie.github.io/QPQ_Web/Quasars_Probing_Quasars/。即我想跳过URL中的Quasars_Probing_Quasars子目录。请参阅当前的www.qpqsurvey.org网站,了解我的意思。

是否可以在不重组文件的情况下为此目的设置永久链接?谢谢。

1 个答案:

答案 0 :(得分:1)

似乎与此问题有关:Set subdirectory as website root on Github Pages

(1)按照以下说明将您的子目录设为GitHub root,然后(2)按照GitHub的自定义域指令正常地将http://www.qpqsurvey.org重定向到gh-pages:{{3 }}

复制@CodeWizard的答案,而@CodeWizard的答案是https://help.github.com/articles/using-a-custom-domain-with-github-pages/引用我的答案的前半部分:

将子文件夹部署到GitHub页面

有时您希望master分支上的子目录是存储库gh-pages分支的根目录。这对于使用https://gist.github.com/cobyism/4730490开发的网站,或者master分支中包含Jekyll网站以及代码的其余部分非常有用。

为了这个例子,让我们假装包含您网站的子文件夹名为dist

第1步

从项目的dist文件中删除.gitignore目录(Yeoman默认忽略它)。

第2步

确保git知道您的子树(与您网站的子文件夹)。

git add dist && git commit -m "Initial dist subtree commit"

第3步

使用子树推送将其发送到GitHub上的gh-pages分支。

git subtree push --prefix dist origin gh-pages

动臂。如果您的文件夹未被调用dist,那么您需要在上面的每个命令中更改它。

如果您定期执行此操作,您还可以Yeoman在路径中的某处包含以下内容:

#!/bin/sh
if [ -z "$1" ]
then
  echo "Which folder do you want to deploy to GitHub Pages?"
  exit 1
fi
git subtree push --prefix $1 origin gh-pages

可让您输入以下命令:

git gh-deploy path/to/your/site