云服务器安装WordPress教程完整版(配置公钥+环境安装+数据库+WordPress)

折腾了近一天之后,终于重做好了服务器系统和web环境,重新安装好了WordPress,然后才发现原来WordPress是这么好的东西,完全没有以前各种后台503错误的情况,因为怀疑是服务器规格太低升级了服务器配置,结果发现根本内存和cpu使用率都很少上10%,可是还是一安插件就503,一开主题就503,最终求助了大神,才知道原来WordPress最好不要直接部署在服务器上,而是在服务器新建个虚拟主机之后再安装到虚拟主机上,下面就给大家分享下全部的过程:
*以下全部教程均在Mac上实现,Windows用户仅供参考
1、配置服务器公钥登录
在全部过程做完之后,我们会经常直接登录服务器用命令行来处理问题,所有为服务器配置公钥登录能大大节省我们的时间,下面我们来配置一下。
(1)在本地机器创建公钥
打开万能的终端,输入如下代码:

ssh-keygen -t rsa -C  'your email@domain.com'

如果提示你已存在,则输入n→回车→进行下一步,否则就无视输出一路回车就好。关于上面代码的解释:-t 指定密钥类型,默认即 rsa ,可以省略 -C 设置注释文字,比如你的邮箱,domain.com就是你服务器的网址或ip地址
(2)将公钥复制到ssh服务器
将前一步骤生成的公钥~/id_rsa.pub文件,复制到ssh服务器对应用户下的~/.ssh/authorized_keys文件

scp ~/.ssh/id_rsa.pub username@hostname:~/

#将公钥文件复制至ssh服务器

ssh username@hostname

#使用用户名和密码方式登录至ssh服务器

mkdir .ssh

#若.ssh目录已存在,可省略此步

cat id_rsa.pub >> .ssh/authorized_keys

#将公钥文件id_rsa.pub文件内容追加到authorized_keys文件
(3)自定义别名(alias)登录
进行完成以上步骤后,我们就可以在终端里只用一行命令登录服务器啦

ssh username@hostname

其中username为服务器用户名,hostname为服务器ip
但其实这样每次登录我们还是需要输入一遍服务器ip,还是略显麻烦,其实ssh本身也提供了一种快捷的方式来解决这个问题,只要我们在ssh的配置信息中写入服务器信息即可

vim ~/.ssh/config

#如果没有该文件,执行如下语句创建一个:

touch ~/.ssh/config

在vim模式下编辑该文件,添加如下信息:
Host alias #选个你想要的别名
HostName hostname #替换为你的ssh服务器ip或domain
Port port #ssh服务器端口,默认为22
User user #ssh服务器用户名
IdentityFile ~/.ssh/id_rsa #第一个步骤生成的公钥文件对应的私钥文件
保存文件退出
*对于不熟悉或不懂vim编辑模式的读者,简要说明一下,进入vim格式后按i键进入编辑模式,输入上述信息,完毕后按esc键,输入:wq,回车,这样文件就保存完毕了
这样就可以直接用如下命令登录服务器了:

ssh alias

2、安装系统及web环境
我个人十分推荐使用如下的一键安装包,对于新手来说非常快捷简便
http://oneinstack.com/install
这里面已经写了非常详细的教程,我只说我遇到的问题
(1)系统及web环境
①我个人选择的是lnmp,Nginx相对于Apache的优势可以自行Google,此处不再赘述
②唯一要注意的是不同软件之间的兼容性问题,我本身选择的是MySQL5.6搭配PHP5.5,运行良好,但其他各个不同版本之间是否会有冲突问题并不清楚,如果想安装其他版本,建议先行Google兼容性
③剩下一切都仔细看提示,提示怎么写怎么选择就好
(2)添加虚拟机
在我添加虚拟机的过程中,在设置完网站根目录之后,会有提醒我:chown: 无效的用户: xxx xxx,然后到最后添加虚拟机就会失败,搜索了一番得到如下解决办法:
首先,在服务器中执行如下两行代码,xxx为刚刚提示的无效的用户中提到的

[root][~]# cat /etc/passwd | grep xxx
[root][~]# cat /etc/group | grep xxx

上面一行是检查用户是否存在,下面一行是检查用户组是否存在,存在的话都会返回一行代码,不存在则无反应,如果不存在用户,则执行如下命令:

[root][~]# useradd xxx -g xxx

如果用户组不存在则执行如下命令:

[root][~]# groupadd xxx

如果都不存在,则先执行添加用户组,再添加用户到用户组,我遇到的问题是用户组不存在,所以执行完第二条语句之后重新添加虚拟机成功
(3)添加FTP账号
此处未遇到问题,按照教程添加即可
至此,系统及web环境就已经安装配置完毕了,下面进入WordPress安装的部分
3、MySQL数据库创建
因为我在安装web环境时就按照推荐的并没有安装PHPmyadmin,所以数据库创建需要用命令行完成,如果你选择安装了PHPmyadmin,那么可以直接安装WordPress官网上的教程执行,下面我会说得比较详细,为了那些没有接触过MySQL的读者,熟悉者可以直接看代码部分,安装了PHPmyadmin的读者可直接跳过
首先在服务器输入以下指令:

mysql -u root -p

接下来会提示你要输入密码,由于MySQL刚刚创建,所以没有密码,直接回车进入MySQL
对于想修改MySQL密码的,可以执行如下语句:

mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');

所有语句后面都应该有’;’,不要忘记
然后我们创建WordPress数据库和用户

mysql>create database databasename;
mysql>GRANT ALL PRIVILEGES ON databasename.* TO username@hostname IDENTIFIED BY "password";
mysql>FLUSH PRIVILEGES;

其中数据库名和用户名自己起,建议为WordPress,hostname一般为localhost,如果出现如下情况:
ERROR 1372 (HY000): Password hash should be a 41-digit hexadecimal number;
这说明MySQL不允许明文输入密码,输入如下语句获取你想要的密码对应的字符串:

mysql>SELECT PASSWORD('yourpassword')

得到的字符串再重新执行上述代码,成功后MySQL的WordPress数据库就创建完毕了
4、WordPress安装
这里面大概也没什么可以说得了,按照官网的流程走就可以了,wp-config.php配置就填刚刚创建数据库你填的那些,用ftp客户端连接到在步骤2的第三步创建的FTP账号,应该能看到刚刚创建好的虚拟主机的文件夹(名字也是你自己命名的),将下载好的WordPress文件夹下所有文件复制到该目录下,注意是文件夹下所有文件,不要连目录一起复制,除非你不想将WordPress放在网站根目录下,之后就可以登录网站进行安装了,如果你的网址还是无法连接到服务器,那说明你的服务器安装之后没有启动,不要看阿里云上写着你服务器运行中就真是运行中了,要去服务器手动启动。
一样还是ssh alias进入服务器,输入如下代码:

service nginx start
service mysqld start
service php-fpm start

我是安装了lnmp,所以需要这样启动,如果安装了别的组合,还是去安装教程那个页面,找到“如何管理服务”项,启动对应的服务就好。
至此,所有步骤完毕,像我一样享受WordPress带来的方便又高效的博客服务吧
如有其它问题,可在评论中讨论

发表评论

电子邮件地址不会被公开。 必填项已用*标注