在VPS上搭建WordPress博客详细步骤

生命本身没有意义,是我们在追寻过程中赋予了它意义!


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

根本就不需要你精通什么编程,懂什么系统,你只要掌握一些常用到命令就能DIY。

本文概览:

VPS是啥子

可以挑选的VPS

nginx与apache的优缺点

开始实践:vultr + wordPress

购买域名之后,进行域名解析的知识点子
Godaddy域名解析
域名解析时遇到的问题:

WordPress相关的文件夹权限问题

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

1 VPS是啥子:

VPS(Virtual PrivateServer 虚拟专用服务器)技术,将一台服务器分割成多个虚拟专享服务器的优质服务。实现VPS的技术分为容器  技术,和虚拟化技术 。在容器或虚拟机中,每个VPS都可分配独立公网IP地址、独立操作系统、实现不同VPS间磁盘空间、内存、CPU资源、进程和系统配置的隔离,为用户和应用程序模拟出“独占”使用计算资源的体验。

2 可以挑选的VPS

1)    搬瓦工:

因其官网网站标识是BandwagonHost,有点类似BanWaGong的拼写,所以我们国内的站长喜欢称作为搬瓦工VPS。搬瓦工VPS是一款性价比较高的便宜VPS主机,且适合入门级网友学习Linux和建站用途。官网好像已经被强。

非官方参考网站: http://banwagong.cn/

2)    vultr

https://www.vultr.com/

利用vultr上购买的vps建立网站好像比较容易:参考:

https://blog.csdn.net/liuweihhhh/article/details/58601676

https://www.cnvultr.com/99.html

https://www.vultr.com/docs/one-click-wordpress

下面着两个感觉很好,我还是喜欢自己部署,而不是一键安装好所有环境:

https://blog.csdn.net/Boxuerixin/article/details/79106587  https://blog.csdn.net/qq_26954773/article/details/62886941

当然还有阿里云等。

相关知识

建立网站环境时需要的东西,例如我使用过的xampp下的apache:

nginx与apache的优缺点:https://blog.csdn.net/ldtruelove/article/details/53081246


3  开始实践:vultr + wordPress

主要参考:https://www.seoimo.com/wordpress-vps/

https://blog.csdn.net/Boxuerixin/article/details/79106587 (这个更精炼!)

1) 注册域名

万网,或者 godaddy

2)  购买Vultr VPS
打开https://www.vultr.com/,点击右上角Create Account,新窗口输入邮箱和密码后提交即可。

好一点的国外VPS审查一般都比较严格,提供真实的信息有助于减少封号。如果打算长期使用,建议注册后完善个人信息,点击页面左侧的”Account”进入填写个人信息的页面。没有填写也可以开通VPS.

部署VPS之前需要充值,点击左侧的Billing,可以选择多种充值方式,可选择支付宝,最低充值10美元。

点击左侧的Server,进入相关页面,点击右上角的加号(Deploy New Server),为你想建立的server选择location(千万别选东京,ssh登陆不上,估计被GFW阻断,选择美国的达拉斯是可以的), Server type(我选择了64位的7*64 CentOS),ServerSize(我选择5美元一个月的),ServerHost&Label随便输入一个名字,,最后点击DeployNow。 稍等片刻,就可以安装好了,可以点击左侧的Server进步页面可以看到已经建立好的VPS,点击其名字就可以进入详细页面,可以看到ip,root密码等。  (location我选择了东京,但是用ssh登陆不上,只能用网页登陆,可能跟选择东京有关,据说东京的容易被阻挡)

CentOS(Community Enterprise Operating System,中文意思是:社区企业操作系统)是Linux发行版之一,它是来自于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS替代商业版的Red Hat EnterpriseLinux使用。两者的不同,在于CentOS并不包含封闭源代码软件。  如果说 Ubuntu 是现今最受桌面用户欢迎的 Linux 操作系统,那么 CentOS 就是最受公司、企业、IDC 喜爱的 Linux 发行版了。得益于极为出色的稳定性,全球范围内无数著名网站均选用它,异次元的服务器也是!

3)登陆VPS:

利用Putty软件登陆VPS, 我没有登陆成功,只能用网页入口,点击view console就可以进入网页端口,跟SSH端口一样只不过不太方便,不能黏贴。

登陆之后,可以先用passwd指令修改密码。但是修改之后,在网站页面上显示的那串密码还是之前的,难道有两个?

有人说最好先升级一下系统,以保证获得最新的软件和内核 : yum -y update

此外,为防止SSH登录一段时间后自动断开,可更改SSH的配置文件以保持SSH长时间在线,

# vi /etc/ssh/sshd_config

将如下两行代码前的#去掉,然后做相应修改:(若无此两行代码请在末尾自行添加)


保存,重启SSH可生效:service sshdrestart

 4)安装nginx,mysql,php

使用lnmp一键安装包安装,方便快捷。如果不用一键安装包,会浪费时间。

获取lnmp一键安装包链接,进入官网 https://lnmp.org/ ,进入下载页面,可以看到最新的下载链接

如上图,复制“下载版”的链接--网上有人建议在VPS上安装的话用下载版比较好。

使用wget指令直接下载: wget http://soft.vpser.net/lnmp/lnmp1.5.tar.gz

然后解压tar -zxvflnmp1.5.tar.gz,

然后进入解压后的文件夹运行 ./install.sh开始安装。

安装过程中会让你选择安装的mysql的版本,会提示让你设置mysql的root密码:,什么是root密码??

设置后保存,然后选择php的版本,我都是选择的默认的。

…….
经过大约20多分钟,安装成功:

此安装过程安装完成便也启动了nginx,mysql,php-fpm并加入了开机启动项。如果重启服务器,不需要再单独手动开启相关的服务了。总的来说相当方便的。

这时候你在浏览器输入http://IP便可以访问了(可能需要能够上外网才行)(我认为能访问的前提是刚才安装的nginx,mysql,php-fpm都是在running状态吧!)。

看到的内容如下图:(不知道为什么时中文的)点击绿色本地环境链接,可以进入php的设置界面。  网站根目录路径/home/wwwroot/default,如果只用来放一些静态页面,那么,现在就足够了,直接将你的html,js,css等文件丢进去即可。

浏览器中输入http://IP则访问的就是根目录,应该是安装包默认的目录,不知道怎么改!!!。--- 难道下面显示的这个网页是一个静态页面,这个静态页面的内容存放在/home/wwwroot/default目录,难道这是不用wordpress而直接用原始方式设计页面的方法?OMG!这才是学习的探索过程啊哈哈。


/home/wwwroot/default目录有如下几个文件,是不是我用浏览器访问http://IP时,自动从这个目录抓取html文件,然后http协议将文件中的内容转换成浏览器页面内容?


一个php的入门教程:http://www.runoob.com/php/php-tutorial.html ,原来php语句时嵌入在html文件中的,html文件时可以直接被浏览器通过http协议进行解析的吧!


5) 安装WordPress(其实就是下载)

英文官方站点 https://wordpress.org/download/下载最新的稳定版本,右键点击红色框框中的链接,复制链接,后面使用wget指令直接下载到vps本地,哈哈哈哈:

为了方便,我们还是在用站点默认的路径,。

cd /home/wwwroot/       //# 进入根目录上一级目录

mv default old          //# 将default重命名为old

wget https://wordpress.org/latest.tar.gz//# 下载WordPress包中文版至/home/wwwroot目录

tar -zxvf xxxx.tar.gz   //# 解压下载的WordPress包

mv wordpress default   //# 将解压后得到的wordpress文件夹重命名为default

将/home/wwwroot所属的所有者改变,并设置读写权限

chown -R www:www /home/wwwroot/     //# 将wwwroot文件夹的所有者设置为www组中的www用户。

提示:chown: changing ownership of‘/home/wwwroot/old/.user.ini’: Operation not permitted

chown -R 755 /home/wwwroot    //# 目录以及目录下的文件授权

提示:chown: changing ownership of‘/home/wwwroot/old/.user.ini’: Operation not permitted

出现的提示大概是说有一个文件无法更改用户分组和权限。不会影响你的wordpress,忽略就好。

知识

1) chown改变文件的拥有者和群组。普通用户不能将自己的文件改变成其他的拥有者。其操作权限一般为管理员。,-R处理指定目录以及其子目录下的所有文件。

chmod是Linux下设置文件权限的命令,后面的数字表示不同用户或用户组的权限。

一般是三个数字:

第一个数字表示文件所有者的权限

第二个数字表示与文件所有者同属一个用户组的其他用户的权限

第三个数字表示其它用户组的权限。

权限分为三种:读(r=4),写(w=2),执行(x=1)。综合起来还有可读可执行(rx=5=4+1)、可读可写(rw=6=4+2)、可读可写可执行(rwx=7=4+2+1)。

所以,chmod 755 设置用户的权限为:

1.文件所有者可读可写可执行

2.与文件所有者同属一个用户组的其他用户可读可执行

3.其它用户组可读可执行

2)ls -l命令,以长格式的形式查看当前目录下所有可见文件的详细属性。举例子:

第1列:文件属性:drwxr-xr-x

其中各个字符代表的意义:

rwx:代表属主权限,-代表无权限;r代表具有可读权限; w代表具有可写权限;x代表具有可执行权限

r-x:代表组权限

r-x:代表其他用户权限

d表示该文件是一个目录,字母"d",是directory(目录)的缩写

第2列:文件硬链接数量 3

第3列:所有者:user

第4列:所属用户组:group

第5列:文件大小:102 byte

第6列:修改时间:Mar11 22:56

第7列:文件名:Filename

3) vigr //查看所有的组
vipw //查看所有用户

groups用户名   //查看用户属于哪个组
whoami  //查看当前用户

su - 用户名   //切换到指定用户

exti  //登出

userdel 用户名    //删除用户

groupdel 组名     //删除组

groupaddxx//添加组

useradd  xx//添加用户

6)为wordpress创建一个数据库:

mysql -u root -p     //# 登录数据库,-p后面不加东西,点击回车后,再输入密码:安装mysql时,自己设置的那个

进入后显示:


然后可以输入sql指令了。

mysql> create database wordpress; //创建名字为wordPress的数据库,不要忘记分号

mysql> show databases;  //# 看一下,有没有我们创建的数据库, 不要忘记分号

# 大概看到如下内容。意味着这一步也没问题。


exit# 退出mysq

上面登陆数据库系统是用的usernameroot,用的密码是安装mysql时设的密码。新建的这个名字为wordpress的数据库属于root用户?另外我新建了一个用户frank,并切换到该用户su frank,然后mysql -u frank -p,输入安装mysql时设的密码,不能登陆!但是再frank用户下输入mysql -u root -p,安装mysql时设的密码,是可以进入sql的。说明 -u后跟的不是linux的用户名,而是整个sql系统的名字(root), 跟用哪个用户登陆linux没有鸟关系!

7)建立数据库后,就可以配置WordPress

这时候再通过浏览器访问http://IP,浏览器将自动跳转到http://IP/wp-admin/setup-config.php,这就是wordpress的配置页面了,看到的内容如下:

然后:


Username是root,是linux上你安装的整个数据库系统的名字,password是你安装mysql时设置的密码。点击submit,我遇到:,可能跟VPS供应商有关吧,那就按照提示操作。但是我不能ssh登陆,传送文件不方便,只能用其他办法。

上面问题的主要原因是,安装程序试图在/home/wwwroot/default文件中新建wp-config.php文件时没有权限,(default文件夹就是从网上下载的wordpress安装包,只不过前面改成了default作为名字,因为安装lnmp后默认的网站主目录是/home/wwwroot/default).然后我改变了default的权限:chown777 default,然后重新用浏览器访问http://IP, 重新来安装,ok 了!点击submit后:



然后,进入wordpress5分钟安装步骤:,site Title随便写,username和pw记下来。


安装完成后:


点击log in,输入用户名密码就可以进入wordPress的dashboard了!!! 整个页面对应的网址是IP/wp-admin(前面不用加http),,对应的服务器的目录应该是/home/wwwroot/default/wo-admin。另外,这个网址可能不能访问,需要外界网。

如果直接用浏览器访问IP,即直接输入IP(前面不用加http),会进入网站界面,没有dashboard栏,是一个完美的界面!



————————————————————————————

购买域名之后,进行域名解析的知识点子:

https://blog.csdn.net/longyrong/article/details/56486734

http://blog.sina.com.cn/s/blog_14ecc25720102xd6y.html

记录类型:

A记录:地址记录,用来指定域名的IPv4地址,如果需要将域名指向一个IP地址,就需要添加A记录。如将chaoyongseo.com指定到IP地址139.***.184.***。A记录可以将多个域名解析到一个IP地址,但是不能将一个域名解析到多个IP地址。解析不带www的域名时主机记录填@或者不填,解析带www得域名时主机记录填www。

CNAME: 如果需要将域名指向另一个域名,再由另一个域名提供ip地址,就需要添加CNAME记录。CNAME记录,全称是Canonical Name(别名解析)。所谓的别名解析就是可以为一个域名设置一个或者多个别名。如将dahaichaoyong.com解析到chaoyongseo.com,将seohuati.com也解析到chaoyongseo.com。其中chaoyongseo.com分别是dahaichaoyong.com和seohuati.com的别名。    别名解析通常用来解析二级域名,比如我要解析一个二级域名“aini.chaoyongseo.com”,那么,记录类型选择CNAME,主机记录填aini,记录值填chaoyongseo就可以了。

主机记录:

www 表示 解析后域名为 www.域名

@表示 直接解析主域名  

*表示泛解析 *.域名

TTL值  

https://www.cnblogs.com/bonelee/p/7305676.html  

TTL值全称是“生存时间(Time To Live)”,简单的说它表示DNS记录在DNS服务器上缓存时间。当各地的DNS服务器接受到解析请求时,就会向域名指定的NS服务器发出解析请求从而获得解析记录;在获得这个记录之后,记录会在DNS服务器中保存一段时间,这段时间内如果再接到这个域名的解析请求,DNS服务器将不再向NS服务器发出请求,而是直接返回刚才获得的记录;而这个记录在DNS服务器上保留的时间,就是TTL值

域名DNS分两种,一种是权威域名服务器,域名注册商的服务器都为权威域名服务器,TTL值只能在权威服务器修改,还有一种域名解析服务器就是缓存DNS服务器,比如各地ISP上网设置的DNS服务器,它的作用主要是把域名解析结果缓存到本地,方便你查询。域名DNS的TTL值实际上就是各地的DNS缓存服务器多久去你的权威域名解析服务器(NS)获取一次你域名的解析IP。

那么域名解析的TTL只应该设置为多少合适呢,下面有两个建议,你可以结合自己参考一下:

一.增大TTL值,以节约域名解析时间,给网站访问加速。

一般情况下,域名的各种记录是极少更改的,很可能几个月、几年内都不会有什么变化。你可以增大域名记录的TTL值让记录在各地DNS服务器中缓存的时间加长,这样在更长的一段时间内,访问这个网站时,本地ISP的DNS服务器就不需要向域名的NS服务器发出解析请求,而直接从缓存中返回域名解析记录。

国内和国际上很多平台的TTL值都是以秒为单位的,很多的默认值都是3600,也就是默认缓存1小时,这个值实在有点小了,难道会有人一个小时就改一次域名记录吗?你可以根据自己的需要把这个值适当的扩大,例如要缓存一天就设置成86400。

二.减小TTL值,减少更换空间时的不可访问时间。

更换空间因为TTL缓存的问题,新的域名记录,在有的地方可能生效了,有的地方可能等上一两天甚至更久才生效。结果就是有的人访问到了新服务器,有的人访问到了旧服务器。如果原来的域名TTL值设置的小,各地的ISP域名缓存服务器服务器就会很快的访问你域名的权威DNS解析服务器,尽快把你域名的DNS解析IP返回给查询者。

这就是说如果想要解析速度,各地ISP的DNS服务器缓存你的域名,你就需要把TTL值设置大一些,如果想让域名更换空间或者IP后能尽快解析到新的IP上,就需要把TTL值设置小一些。

对于IP地址相对固定,或短期内不会变更IP地址的用户来说TTL值设置的大些如几个小时或更大些为宜。调大TTL值可以显著的提高域名的解析稳定性和速度。而对于近期有计划变更IP地址的用户需要提前把TTL值改小,以便使缓存在世界各地DNS服务器上的旧域名记录迅速过期,等IP地址固定下来后再把TTL值改大。


Godaddy域名解析:

http://godaddy.idcspy.com/godaddy-jx

http://godaddy.idcspy.com/nameservers

进入 https://dcc.godaddy.com/domains/ ,这个界面会显示你购买的所有域名


点击 三个点 ,选择管理DNS,进入如下界面:

点击添加,既可以输入ip。从而将买的域名绑定到这个IP。


域名解析时遇到的问题:

1)绑定域名后,用域名登陆网站时提示:wordPress敬请稍后再来查看网站是否可用

2)This Web page is parked for FREE


刚刚绑定ip之后晚上登陆显示的是问题1,第二天再用域名登陆显示的是问题2,然后用下面的方案解决后,都ok了。

解决https://zhidao.baidu.com/question/50486303.html  进入上图DNS管理页面,将做A解析之前的所有带@的记录删除(只删除可以删除的即可),有些记录删除不了,不知是什么,可能是公共的域名解析服务器吧!

域名停放:https://baike.baidu.com/item/%E5%9F%9F%E5%90%8D%E5%81%9C%E6%94%BE/1164603?fr=aladdin

WordPress相关的文件夹权限问题:
https://codex.wordpress.org/Changing_File_Permissions

给我的wordPress添加图片资源时提示:Unable to create directory wp-content/uploads/xxx,,只需要让文件夹具备 可写权限即可,我直接chmod -R 777 default/。



下载主题时,先要登陆ssh问题:

首先,下载主题时需要能够访问外部网络。如果提示需要登陆ssh才能下载,是网站文件夹所属组别问题,

解决:我用了方法一

使用Wordpress程序架构的网站如果需要在网站后台升级、安装主题或者插件的时候,总是会提示需要我们提供FTP信息的界面。有这样的字样提示"要执行请求的操作,WordPress需要访问您网页服务器的权限。请输入您的FTP登陆凭据以继续。如果您忘记了您的登陆凭据(如用户名、密码),请联系您的网站托管商"。这个是比较麻烦的,现在就尝试解决一下! 

第一,如果我们安装的是lnmp一键安装包,那可以使用。授权组来解决。
chown -R www xxx   //xxx是你的网站对应的目录
其中 www是www用户组 一定加上-R 递归指定。
第二,如果是其他的可以使用在wp-config.php文件中添加脚本方式。
define("FS_METHOD","direct");
define("FS_CHMOD_DIR", 0777);
define("FS_CHMOD_FILE", 0777);

上述脚本添加到文件最后面就可以。 




猜你喜欢

转载自blog.csdn.net/qq_35865125/article/details/80822127
今日推荐