移动Textpattern意味着在两个目录之间重新定位安装; 在同一台服务器上或两台服务器之间。在数据库处理除外的两种情况下,该过程都相对相同。此页面将详细介绍每个方案。

在本页面:

在同一服务器上的目录之间移动
在两台服务器之间移动
在同一服务器上的目录之间移动
已知Textpattern用户将Textpattern安装在Web域的子目录中(例如example.com/subdirectory),然后决定将安装重定位到域根(即example.com)。

以下是详细过程:

登录到Textpattern管理页面,导航到[[首选项页面]],然后更改“站点URL”条目以反映新的根安装位置(应该只是从路径中删除子目录)。您还需要在[[首选项页面]]中更新文件上载路径。同样,它应该只是删除子目录的问题。
您需要更改config.php文件中数据库的引用路径。导航到/textpattern/config.php,打开文件并更改路径,以便它们现在反映来自域根目录而不是前一个子目录的数据库链接(即只需从路径中删除子目录)。
将Textpattern文件夹/文件结构传输到域根级别(现在不是突然改变站点结构的时间 – 完全保留文件夹和文件结构)。不要忘记.htaccess文件!
如果您在任何设置为绝对路径的页面模板中有任何“内部”硬编码链接(例如图像路径链接),则需要转到任何此类页面并更改这些链接。如果您的内部链接被硬编码为相对链接并且您的网站结构没有变化,您也不必担心这一点,也不需要更改转到外部内容(即不同网站)的绝对链接。
如果一切顺利,您应该能够通过新的域根位置访问您的Textpattern主页或站点管理页面,其中所有内容都处于正常运行状态。

此过程也适用于从另一个方向(从根到子目录)移动安装,或者在通过XAMPP,MAMP等进行本地安装时。

在两台服务器之间移动
有时需要(无论是为了更好的服务,更便宜的交易等)将您的网站从一个网络托管服务转移到另一个网站托管服务。这是一个相对容易的事情,主要涉及备份当前的Textpattern安装和数据库,在新的服务器位置重新安装它们,以及调整文件以确保一切正常。

为了避免一些潜在的麻烦,我们鼓励您不要对Textpattern或MySQL进行任何版本升级或降级,如果可以帮助的话; 最好先使用相同版本的技术进行切换,然后在一切正常工作后进行所需的升级。

这个过程
第1步:备份现有的Textpattern资源
我们在这里讨论的是两件事:导出现有数据库文件的副本,以及将当前服务器上的Textpattern文件夹和文件树的副本移动到本地计算机。

导出现有数据库表
登录phpMyAdmin。
在选项菜单中选择“导出”。
此时,您将有很多选择导出模式。请注意,如果您需要较小的文件大小,则可以排除日志文件。您可以选择导出普通的.sql文件(.txt)或各种压缩文件。您的主机可能有更具体的导出需求 – 如果这些设置不起作用,您可能需要与主机联系以了解服务器的特定需求。
将Textpattern文件夹/文件树移动到本地计算机
使用FTP或SFTP(以适用者为准)将Textpattern树从站点的根文件夹移动到本地计算机。您将使用此副本将树稍后上载到新的Web服务器位置。

实际上,强烈建议您在关闭旧主机帐户之前设置新帐户并完全测试迁移(因此,在您使用新主机帐户之前,您可能不会告诉旧主机您的离开地点)。如果在某个地方出现问题,您可以使用工作副本进行参考,进行任何调整或在必要时重新导出。

步骤2:在新的Web主机服务器上安装资源
设置数据库
在新主机上,使用phpMyAdmin(或类似工具)创建“数据库名称”和“数据库用户”(您的新数据库名称可能与以前Textpattern使用的名称不同)。
如果默认情况下尚未选择数据库,请选择刚创建的数据库。
选择“导入”选项卡。
浏览您在步骤1中创建的数据库的文本文件备份。
上传吧!
配置Textpattern以与新数据库连接
通过FTP 将整个Textpattern树(example.com/textpattern)以及默认文件index.php和.htaccess文件上传到新服务器。
textpattern/config.php在文本编辑器中打开。
您需要更新所有随服务器移动而发生更改的值(数据库名称,mySQL用户名,mySQL密码,主机和表前缀(如果使用))。
以下两个值可能需要您联系支持以查找它们:

$txpcfg[‘txpath’] = ‘/home/.some_name/site_username/example.com/textpattern’;
$txpcfg[‘doc_root’] = ‘/home/.some_name/site_username/example.com/’;
处理密码
迁移安装或升级MySQL后更改密码。

在phpMyAdmin中,从左侧的下拉菜单中选择您的txp_数据库。该数据库中的表列表将直接显示在下拉菜单下方。在该列表的底部附近,您应该看到您的txp_user表格。选择该表。该表的所有信息现在将占据屏幕的主要内容区域。
顶部有一排标签。选择“结构”选项卡。
在主要内容区域中查找被调用的行pass,并选择最右边的小铅笔。
在主要内容区域的顶部,您将看到“字段”,“类型”,“长度/值”,“排序”等。在“长度/值”框中重新键入128,然后选择“保存”。
选择“浏览”选项卡
在内容区域的中间,你应该看到一个小铅笔。选择它。
主要内容区域现在将有五列标记为“字段”,“类型”,“功能”,“空”,“值”。应该调用顶部的第三行pass。最右边是当前密码的加密值。删除该框的内容并输入新密码。您也可以在旧密码中重新输入。重要提示:此时不要在密码中使用大写字母(Textpattern会在对其进行散列之前将密码转换为小写,因此如果使用大写字母散列任何密码,它将不会匹配)。
在行的下拉菜单中pass选择“密码”。
选择“开始”。
您现在已准备好重新登录Textpattern界面。

第3步:移动后排除问题
在将安装从一个服务器物理移动到另一个服务器时,可能会让人们挂起的第一件事是在移动过程中奇怪的包含config.php文件中的空白区域(很可能是在重新安装文件期间)。当发生这种情况时,通常会产生三个问题……

您的主页可能似乎缺少任何CSS样式。
当您登录Textpattern管理面板时,您将无法访问某些选项卡(“内容”页面除外)。
以下错误消息或类似内容将显示在页面顶部:
“Warning: Cannot modify header information – headers already sent by (output started at ‘/home/user/public_html/textpattern/config.php:13)’ in ‘/home/user/public_html/textpattern/publish.php’ on line 170.”
要统一修复这些问题,请打开config.php文件并删除已自动添加到文件末尾的任何尾随空格。


扫描二维码,在手机上阅读!