如何使用SSH访问WordPress网站是您可能没有考虑过的事情。对于大多数WordPress用户,最熟悉的连接到您的网站的方法是通过WordPress仪表板和管理屏幕,再结合SFTP和phpMyAdmin来访问数据库。如果您想加快工作流程,您会发现学习如何使用SSH连接到WordPress站点将使您更加高效。
什么是SSH?首先,让我们先确定什么是SSH以及何时使用它。
SSH的意思是“安全外壳”。该SSH规范把它定义为:
“用于在不安全的网络上进行安全的远程登录和其他安全的网络服务的协议。”
这意味着只要您具有登录凭据,就可以使用它从任何计算机从任何计算机远程访问WordPress站点,而不管您的站点托管在哪里。使用此方法本质上是安全的。
SSH旨在提供安全的登录,因此您可以确信在使用它时没有人可以访问您的连接。一旦掌握了它,它也很快且易于使用。而且,如果您想与WordPress REST API交互,这是发送命令的一种方法。
要通过SSH连接到服务器,您需要做两件事:
接口。 登录信息。如果您运行的是Linux或macOS,则您的操作系统中内置了一个界面,因此您无需安装SSH客户端。但是,如果您正在运行Windows,则需要安装客户端。在这篇文章中,我将向您展示如何做到这一点。
您需要通过SSH连接到站点的工具首先,您需要使用终端或SSH客户端。这些以非常相似的方式工作。
通过macOS或Linux上的终端连接终端是Linux或macOS附带的应用程序,可让您使用命令行将命令发送到计算机或远程服务器。
它不是图形界面,因此您不会使用鼠标。而是键入文本命令。对于初次使用的用户,这可能有点令人不安,因为您可能习惯于看到命令的直观表示。但是一旦习惯了,您会发现它更快。
如果在使用图形用户界面之前的几天中使用计算机,并且使用诸如Microsoft的MS-DOS之类的系统,则您可能会熟悉这种界面。好消息是,与MS-DOS相比,终端为您提供了更多的选择!
要在Mac上打开终端,请打开Spotlight并输入Terminal。您也可以通过“ 应用程序”>“实用程序”访问它。
在Mac上查找终端
要在Linux上打开终端,请在“ 应用程序”菜单中找到它。如果不是立即可见,请在提示中输入Terminal以找到它。
在Windows上通过SSH客户端连接SSH客户端是一个程序,如果您正在运行Windows,则需要安装该程序才能通过SSH连接。
最受欢迎的SSH客户端是PuTTY。您需要下载并安装它,然后才能从Windows访问您的网站。
在Windows上安装Putty SSH客户端首先进入PuTTY下载页面。
从这里,选择与您的Windows版本相对应的软件包。如果不确定是否要下载32位或64位版本,请查看“ 常见问题”页面。如果有疑问,则32位版本是更安全的选择。
单击“ MSI”(“ Windows Installer”)下的两个选项之一。该文件将下载到您的计算机上并运行安装程序。
安装PuTTY后,将其打开,然后即可使用它连接到您的站点。
如何通过命令行连接到服务器找到或安装终端或SSH客户端后,下一步就是连接到远程站点。
在终端或SSH客户端中,您可以使用命令行来连接命令并将其发送到服务器。从现在开始,我将使用该术语,而不是指终端或SSH客户端。
为此,您需要四项信息:
服务器地址。 用户名。 密码。 港口。服务器地址通常是您的域名或IP地址。如果您的站点由Kinsta托管,请使用您的IP地址。
用户名和密码将是您的FTP用户名和密码,而不是WordPress管理员的用户名和密码。
该端口将由您的托管服务提供商提供。在某些情况下,会使用默认端口,但是为了获得Kinsta的额外安全性,我们为不同的站点使用了不同的端口。
在MyKinsta中,可以通过选择站点并在“信息”屏幕中找到“ SFTP / SSH”部分来找到详细信息。
MyKinsta SSH
只需将其复制并粘贴到命令行即可。
完成此操作后,将提示您输入密码。从MyKinsta复制该文件,即可访问您的服务器。
您会看到一个类似于以下内容的屏幕:
Kinsta SSH起始画面
如果您不是使用Kinsta托管,您的屏幕可能会有所不同,但仍可以访问服务器。
如何使用SSH与您的网站进行交互现在,您可以开始使用SSH与服务器和站点进行交互。您可以使用许多SSH命令以及WordPress命令行界面(WP-CLI)提供的命令。
重要SSH是一个非常强大的工具,如果不小心,可能会破坏您的站点。它将允许您添加和删除文件,因此,例如,如果输入错误的命令,则可能会丢失内容或删除所有图像。始终谨慎使用它,并确保在使用它之前备份您的站点。
基本SSH命令SSH附带了一系列命令,可用于连接服务器并与之交互。
通过命令行查看服务器后,您只需以与使用Terminal与您自己的计算机进行交互时相同的方式键入SSH命令即可。
让我们看一下您可以开始使用的一些最有用的SSH命令。
ls命令 cd命令 mkdir命令 触摸命令 猫命令 rm命令 cp命令 mv命令 ls命令使用 ls命令获取当前位置的文件和目录列表。您可以在命令中添加更多内容以获得更多信息:
ls -l 显示文件的详细信息,例如大小,修改的日期和时间,所有者和权限。 ls -a 显示隐藏的文件和目录。 ls命令
cd命令使用 cd命令更改目录。您将被带到新目录,命令行将指示您的位置:
cd命令
然后,您可以再次使用 ls来查找新目录中的内容。
您可以 cd用来向下移动多个目录,也可以向上或跨目录移动。要向上移动,请cd像这样输入两个点 :
cd ..并转到特定目录,请键入完整的目录路径,例如:
cd public/wp-content/themes mkdir命令使用mkdir命令创建新目录。因此,如果我位于themes目录中,则可以为一个新主题创建一个新目录:
mkdir mytheme 触摸命令创建新目录后,可以使用touch命令向其添加新文件:
touch style.css 猫命令要显示文件的内容,请使用 cat命令。
猫命令
rm命令使用 rm命令删除文件或文件夹。请谨慎使用,因为无法撤消:
rm style.css cp命令该cp 命令用于复制文件和文件夹。您需要提供文件或文件夹的名称以及要将其复制到的位置。
cp [options] [source] [destination]您也可以在命令的开头添加选项,但不需要添加。因此,当您在wp-content目录中时,要将footer.php文件从一个主题复制到另一个主题,可以使用以下命令:
cp /themes/theme1/footer.php /themes/theme2/不要为目标文件添加名称。如果您这样做了,并且在该目标位置已经有一个具有该名称的文件,那么该文件将被您要复制的文件的内容覆盖。
如果在爆炸中不包含文件名并且该文件已存在,则将收到错误消息,并且复制不会发生。
我已经提到过,可以在此命令的开头添加一些可选元素。这些是:
-f:如果您没有目标文件的写许可权,则会将其删除,并且该命令将创建一个新文件。 -u:仅在源文件比目标文件新时才复制它。 -n:不会覆盖现有文件。 -a:存档文件。 -R:仅对于文件夹,复制该文件夹内的所有文件和文件夹。 mv命令作为复制文件的替代方法,您可以使用mv命令移动它 。为此,您仅提供源和目的地:没有选项。
mv /themes/theme1/footer.php /themes/theme2/这将从theme1中删除footer.php文件,并将其移至theme2。如果使用文件夹执行此操作,它将始终也在该目录中移动文件和文件夹。
您可以在SSH文档中找到有关更多SSH命令的信息。
使用WP-CLI与您的站点进行交互除了标准的SSH命令外,WordPress还为您提供WP-CLI界面,该界面提供了更多命令。这包括与文件和文件夹,管理选项以及您的数据库进行交互。
使用Kinsta,WP-CLI随您的主机一起提供,您可以立即开始使用它。如果您的托管服务提供商没有提供WP-CLI,则可以按照WP-CLI指南中的步骤进行安装。
测试和排除SSH连接故障有时,您可能会发现SSH的行为不符合您的期望。您可能无法连接,或者您使用的命令无法按您期望的方式工作。
如果发生这种情况,请尝试以下一些故障排除技巧。
如果无法通过SSH连接如果您无法连接到服务器,请查看任何错误消息或提示命令行为您提供帮助。有时,您将不得不回答是/否提示或修正命令中的错字。
如果这样不起作用,请检查您提供的登录凭据是否正确。您将可以从MyKinsta中站点的“ 信息”页面中获取这些信息 。其他托管服务提供商可能会在cPanel或他们使用的任何仪表板中都有一个SSH部分。
如果您再次尝试,但仍然无法正常工作,请尝试重置SSH密码。检查您的互联网连接是否正常,并且没有防火墙阻止您访问服务器。如有疑问,请关闭终端或SSH客户端,然后再次将其打开。
登录到您的托管帐户,并检查是否没有服务器问题阻止您获得访问权限。如果您使用Kinsta,请转到我们的系统状态页面,以查找是否有任何故障。
Kinsta系统状态屏幕
如果您在公共网络上,则可能不允许SSH访问您的端口。尝试使用您知道可以正常工作的其他端口进行测试。
如果所有其他方法均失败,请与您的托管服务提供商打开支持票证,该服务提供商将能够访问日志并弄清为什么您无法连接。
如果您的SSH命令无法正常工作另一个常见问题是SSH命令无法按您期望的方式工作。这通常是由于命令输入错误所致。
这是我键入is而不是 的示例 ls :
在终端输入错字
在这里,我看到一个错误警告(command not found),所以我使用正确的命令再试一次。
有时您可能会正确键入命令,但会弄错参数。如果是这种情况,请查看SSH文档中的SSH命令和WP-CLI文档中的WP-CLI命令。
如果您的SSH命令由于连接无效而无法使用,您将看到一条错误消息告诉您。命令行不断向您提供有关正在发生的事情的信息,这是它的好处之一。实际上,它通常比图形界面为您提供更多,更清晰的信息。
如何生成新的SSH密钥对以提高安全性与使用用户名和密码连接到SSH相比,生成SSH密钥对增加了额外的安全性。您可以从终端或SSH客户端中进行操作。就是这样。
生成密钥对涉及三个步骤:
在终端或SSH客户端中生成密钥对。 将密钥对添加到您的托管帐户-在MyKinsta中,您可以通过“ 用户设置”屏幕来执行此操作。 使用密钥对连接到终端中的服务器或SSH客户端。 在MyKinsta中添加SSH密钥
您可以在我们的指南中找到有关执行此操作的完整说明,该指南为macOS,Linux和Windows 生成SSH密钥对。
想要成为一个更有效率的开发商?了解如何使用SSH连接到您的站点!使用SSH连接到服务器和WordPress站点将比依靠WordPress管理界面,FTP甚至phpMyAdmin更加高效。
按照上述步骤通过SSH连接到服务器,您会发现您可以在站点上执行更多操作,而无需在应用程序或浏览器窗口之间切换。