将ProcessWire网站迁移到UbuntuVPS

来自菜鸟教程
跳转至:导航、​搜索

状态: 已弃用

本文介绍了不再受支持的 Ubuntu 版本。 如果您当前正在运行运行 Ubuntu 12.04 的服务器,我们强烈建议您升级或迁移到受支持的 Ubuntu 版本:

原因: Ubuntu 12.04 已于 2017 年 4 月 28 日终止生命周期 (EOL) and no longer receives security patches or updates. This guide is no longer maintained.

请参阅: 本指南可能仍可用作参考,但可能不适用于其他 Ubuntu 版本。 如果可用,我们强烈建议使用为您正在使用的 Ubuntu 版本编写的指南。 您可以使用页面顶部的搜索功能来查找更新的版本。


介绍

ProcessWire 是一个灵活的开源 PHP 内容管理系统。 对于客户来说易于更新,对于开发人员来说是一种愉快的合作。

系统要求

您将需要一个标准的 LAMP 堆栈来运行 ProcessWire。 创建 Droplet 时,在 Applications 下,选择 LAMP on Ubuntu此处 提供了完整的要求列表。

启用 htaccess

要使用 mod_rewrite,必须启用 htaccess 覆盖。 您将需要修改默认主机配置文件。 这可以在以下位置找到:

/etc/apache2/sites-available/default

vimnano 中打开它。 查找以下部分(以 Directory /var/www 开头):

<Directory /var/www/>
  Options Indexes FollowSymLinks MultiViews
  AllowOverride None 
  Order allow,deny
  allow from all
</Directory>

在上面写着 AllowOverride None 的地方将其更改为 AllowOverride All

启用 GD

ProcessWire 需要安装 GD 才能调整和裁剪通过 CMS 上传的图像。 要安装 GD 并运行它,请使用以下命令。

apt-get install php5-gd
service apache2 restart

启用 mod_rewrite

ProcessWire 要求启用 mod_rewrite PHP 模块。 如果您使用 Digital Ocean 的 LAMP Application droplet 配置,它应该已经安装并且只需要启用。 要启用它并重新启动 Apache,请运行以下命令:

a2enmod rewrite
service apache2 restart

启用发送电子邮件

如果您希望在您的网站上有一个联系表,您还需要确保已安装和配置 sendmail,以便您可以使用发送电子邮件的功能。

apt-get install sendmail
sendmailconfig
service sendmail restart
service apache2 restart

要加速 PHP 邮件,请将以下行添加到您的主机文件中,该文件可以在 /etc/hosts 中找到,将 yourhostnamehere 替换为您的主机名。

127.0.0.1 localhost localhost.localdomain yourhostnamehere

检查所有模块是否安装正确

访问您站点 URL 的 PHP 信息页面,查看所有模块已正确安装在 http://yourhostname/info.php 中,您将 yourhostname 替换为您的实际主机名。

  • 广东
  • 发送邮件
  • mod_rewrite

一旦这些都在那里,我们就可以下载并安装 ProcessWire。

压缩您网站的文件

为您的网站创建一个压缩档案以加快上传速度。

确保为您的网站也包含一个 MySQL 转储。

不要忘记您的 .htaccess 文件,默认情况下它是不可见的。 该文件是必需的。

tar cvf site_name.tar directory/

上传您的 ProcessWire 网站

通过在命令提示符中键入以下命令登录到您的网站:

ssh user@yourdomain

转到您的公共网络目录:

cd /var/www

使用安全副本将您网站的存档上传到您的 Droplet。

确保还上传 MySQL 转储文件的副本。

取消归档您的网站

上传网站后,您可以使用以下命令提取您的网站:

tar xvf website.tar 

这可能会将您的网站解压缩到名为 website/ 的文件夹中。 如果是这种情况,您需要将所有包含的文件移回一个目录到 /var/www。 这可以通过以下命令完成:

cd website
mv * ..

MySQL 导入

创建数据库

假设您已经创建了 MySQL 用户名和密码,您将需要登录 MySQL 并创建一个数据库:

mysql -u username -ppassword

成功登录后,您应该会看到 mysql >。 运行以下命令创建一个新数据库:

create database dbname;

要验证数据库是否已正确创建,您可以运行以下命令:

show databases;

导入您的 MySQL 转储

现在您有了一个数据库,您可以使用以下命令将您的 MySQL 转储文件导入其中:

mysql -u username -ppassword dbname < path/to/mysqldump.sql

更新config.php

现在您已经上传了数据库,您需要使用新的数据库凭据更新 site/config.php 文件:

$config->dbHost = 'localhost';
$config->dbName = 'dbname';
$config->dbUser = 'username';
$config->dbPass = 'password';
$config->dbPort = '3306';

整理起来

去看看你的网站。 为确保一切正常,请访问您的一些页面并登录仪表板。

如果您无法成功登录,可能是因为 /site/assets/sessions 目录不存在或不可写。

您需要确保服务器可写入 /site/assets 文件夹,以便您可以上传文件并登录。

一旦您的网站正常运行,请务必删除您的 MySQL 转储文件。

进一步阅读

如果您对 ProcessWire 有任何疑问,可以尝试 论坛

提交人: [[“%3Ca|http]] ://tinaciousdesign.com [[“%3C/a|”>蒂娜·霍莉]]