GitHub Pages支持PHP吗?

30

感谢您抽出时间审阅我请求帮助的内容。

我一直在使用gh-pages来构建静态网站,并且该服务器在整个构建过程中为我提供了出色的服务!

但是,当我通过PHP代码将HTML表单提交到我的电子邮件时,似乎出现了问题。当我提交到gh-pages服务器时,会出现错误消息:*405 not allowed ngix*,我已经在尝试找到答案。首先,我发现我的代码中有一些小错误,我已经修复了它们。然后,我使用正确的代码再次提交到服务器,但仍从gh-pages服务器接收到相同的消息。*405 not allowed ngix*这让我相信gh-pages服务器不支持任何PHP代码。

我在SO上找到了一些关于gh-pages服务器不支持PHP的信息。如何发布.php页面而不是.html在github上演示一些php内容?

screen shot 2014-12-27 at 12 44 19 pm

enter image description here 服务器端包含替代方案

PHP是否在gh-pages上运行?还是不支持?

如果不支持,则我知道我这边的一切都是正确的,我不必担心,因为当我真正部署此站点时,我将使用支持PHP的服务器。

这是我的当前构建,以便您可以测试我的问题。 http://kapena.github.io/pp_web/#contact-pp

当我向服务器提交表单时,我得到了以下结果:

输入图片描述


2
我90%确定它只支持HTML和JavaScript,不支持PHP。 - Daryll Doyle
@DaryllDoyle 是的,我也这么认为。刚刚在这个问题上给 GitHub 发了电子邮件。最好的方法就是直接去询问它的来源 :) - brent_white
我过去所做的是运行一个 Github Action,将更改提交回您的存储库: 步骤:
  1. 将 your_page.php 提交到存储库
  2. 运行 php your_page.php > your_page.html
  3. 提交 your_page.html 到存储库
  4. 页面已上线
这适用于像 PHP include 头文件之类的东西,这正是我以前使用它的方式,但不包括任何执行服务器端的内容。编辑:我曾经在 Netlify 中通过 oneliner 完成此操作:mv index.html index && php index > index.html
- sturlabragason
3个回答

32

根据定义,静态网站不支持PHP。

  • 静态网站直接从Web服务器的文件系统中提供内容,与存储方式完全一致。

  • 动态网站会根据每个请求实时生成内容。该请求被委派给正在运行的Web应用程序来构建内容。

什么是静态网站

你可能会对PieCrust感兴趣。它是一个静态网站生成器。


你可能也会对gohugo感兴趣。 - Reynadan

9
Github pages目前不支持PHP,因为它仅支持静态网站。
然而,如果你想在你的网站上显示一些动态内容,你可以简单地使用iframe来显示该内容,但是它必须在其他地方托管。
这里有一些对你可能有帮助的内容: 使用Github Pages的指南

0
不支持,但是它们支持嵌入 PHP: 您可以将一个页面嵌入到 GitHub 页面中,而该页面上的 PHP 则托管在其他托管站点上。

2
请详细说明。你是什么意思? - posfan12
1
@posfan12 你可以将你的 PHP 网站嵌入到 GitHub Pages 的 iframe 中,但是你仍然需要在某个地方托管 PHP。 - user11543803

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接