复制整个网站,包括 PHP 和 SQL?

复制整个网站,包括 PHP 和 SQL?

wget使用(或其他程序)复制整个网站和模板时是否httrack也可以获取 PHP 代码和 SQL 数据库?

我需要什么软件来复制/镜像这样的网站?“Internet Download Manager”是可用于此目的的程序吗?

答案1

不可以。Web 服务器必须明确地向您公开这些文件。

当您加载使用 PHP/SQL 的网站时,它将在服务器本身上运行 PHP,并返回 PHP 程序的输出(通常是 HTML、CSS 和 JS 的混合)。这些文件实际上从未以这些状态存储在 Web 服务器上,而是由程序生成的。使用 wget 时,您正在下载 Web 服务器的输出(对 HTTP 查询的响应),而不是从服务器复制文件。

SQL 服务器只能通过受信任的帐户访问,通常由上述 PHP 代码访问。除非您拥有使用 ssh 或 sftp 登录服务器本身的凭证,否则您将无法访问原始 PHP 代码或 SQL 数据库。

服务器可能配置为允许直接从计算机下载文件,包括 PHP 文件,但这种情况并不常见,因为这完全违背了使用 PHP 的目的。称职的管理员不会允许直接访问 PHP 代码,尤其是会严格限制对 SQL 服务器的访问。

这并不是说你不能利用安全漏洞来做到这一点。但这样做通常是不道德的,除非你有一个非常这样做的充分理由(例如,您受一家安全公司聘请,对客户的网站进行安全审计)。

答案2

不可以,除非网站有严肃的安全漏洞。

PHP 在 Web 服务器上执行,永远不会以原始形式传递给客户端。相反,客户端在运行 PHP 代码后会收到 PHP 解释器的输出。

同样,数据库后端无法被客户端访问,也无法直接对其进行查询。

答案3

还是不行。您只能获得编译后的网页,而不是数据库中保存的后端数据。

您需要 FTP 访问网站的根目录,然后从那里获取包含后端的镜像 - 但前提是数据库包含在网站路径中。如果没有,您需要打开端口来查询数据库并构建镜像,或者要求托管商专门为您提供数据库的副本。

答案4

简短的回答是“不”。从客户端,您只能使用网页或 wget 获取内容。应用程序会提取 SQL 数据库中的数据,以呈现到您的浏览器中。要完成网站的完整“备份”,您需要访问服务器端内容、sqk、php 文件等

相关内容