初学者如何使用阿里云ECS搭建基于Wordpress的网站
目录
- 前言及自我简介
- 装备阿里云ECS
- 建立LAMP环境
- 装置Wordpress
- 调试与布置FTP
- 后记及效果参阅
运用阿里云ECS建立基于Wordpress的网站
1.前言及自我简介
笔者是一名本科大二在读学生,来自宁波大学科学技术学院电气工程及其自动化专业。在本文中,笔者将尽量以初学者的视点,为一切初次接触ECS并想要建立个人网站的朋友具体叙述流程与心得。
由于阿里云的“飞天加速计划”,笔者免费领取到一台阿里云ECS云服务器(后文简称“ECS”)。虽然带宽略小,地域略偏,时刻略短,作为学习实验工具而言仍是足够运用的。下文的一切操作,皆于此ECS之上完结。
2.装备阿里云ECS
引荐初次运用阿里云ECS的用户完整完结“ECS云服务器新手上路”实验,了解阿里云操控台的根本操作。
进入云服务器办理操控台后,能够在概览页面下方找到标题为“建立云上博客”的场景教程。
建议想要运用阿里云ECS的用户跟从此场景教程进行操作。本文将基于此教程额定进行补充说明与后续指引。
在创立服务器的过程中,请务必选用“Alibaba Cloud Linux 2.* LTS 64位”操作体系。
“*”:即通配符*,可泛指一切字符串。
“LTS”:即长时刻支持版别,相较其他版别更加成熟且安稳。
Alibaba Cloud Liunx是CentOS的兼容发行版,相较于CentOS7少去了许多初期装备的麻烦。而3.*版别经笔者实际运用,发现其仍然存在难以解决的BUG(如:无法装置mod_auth_mysql)。故此处引荐运用LTS的2.*版别。
场景教程中没有指明所需的操作体系。若你打算跟从场景教程并参阅本文进行操作,但现已装置其他操作体系,请在操控台-实例-实例详情中停止ECS,并更换操作体系。
指令在不同的体系之间存在不兼容的可能。例如软件包装置指令,在CentOS体系中为“yum install”,而在Debian体系中则为“apt-get install”。Alibaba Cloud Linux运用前者。
若你经过CMD运用openSSH衔接ECS,那么在更换操作体系后,可能会呈现无法衔接的状况。过错信息如下:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man- in- the- middle attack)! It is also possible that a host key has just been changed. The fingerprint for the RSA key sent by the remote host is SHA256:*. Please contact your system administrator. Add correct host key in /c/Users/administrator/.ssh/known_hosts to get rid of this message. Offending RSA key in /c/Users/administrator/.ssh/known_hosts:4 RSA host key for *.*.*.* has changed and you have requested strict checking. Host key verification failed.
这是由于ECS重装体系后SSH对不上公钥了。此刻根据报错信息中供给的文件途径,找到known_host文件,将其间对应ECS的IP字段以及RSA信息删去即可。
引荐运用阿里云操控台-长途衔接-Workbench进行ECS的长途衔接。
3.建立LAMP环境
yum -y install httpd httpd-manual mod_ssl mod_perl mod_auth_mysql systemctl start httpd.service
于ECS终端依次履行上述指令。终端显现Complete!之后,表明Apache服务装置完结并成功发动。
但想要经过浏览器直接拜访公网IP,还必须在阿里云操控台-实例-安全组-装备规矩中,增加入方向的HTTP端口授权。如图所示,在快速增加中勾选对应端口并确认即可。
现在,于浏览器中拜访公网IP,即可看见Apache的初始页面。
履行以下指令以装置MySQL。
wget http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm yum -y install mysql57-community-release-el7-10.noarch.rpm yum -y install mysql-community-server
实际上,在履行第3条指令句子时,将会装置失利并回来一大串报错信息,其间一段为GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql。这是由于教程中的指令有缺漏,RPM数字签名无法验证。解决方法很简单,只需要补一句去mysql官网装置GPG公钥的指令即可。
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022 yum -y install mysql-community-server
装置完结后,发动MySQL数据库并检查MySQL的初始暗码。
systemctl start mysqld.service grep "password" /var/log/mysqld.log
根据初始暗码,登录MySQL,并修正默认暗码。
新暗码必需同时具有“大小写英文字母”、“数字”、“标点符号”三种不同字符,否则无法修正并报错。下面给出操作指令与参阅典范暗码。
mysql -uroot -p ALTER USER 'root'@'localhost' IDENTIFIED BY 'Aliyun@123';
在MySQL中,一切指令句子都必须以“;”结束。无“;”的句子即便回车换行也不会履行。此刻,需要在第二行补上一个“;”。
履行下列指令,以创立一个供Wordpress存储网站内容的数据库,然后检查数据库目录。
create database wordpress; show databases;
终端将回来以下信息。能够看到在最终一行便是成功创立的Wordpress数据库。
+--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | | wordpress | +--------------------+ 5 rows in set (0.00 sec)
输入exit即可退出MySQL。
履行下列指令,装置PHP并创立测验页面,随后重启Apache服务以应用更改。
yum -y install php php-mysql gd php-gd gd-devel php-xml php-common php-mbstring php-ldap php-pear php-xmlrpc php-imap echo "" > /var/www/html/phpinfo.php systemctl restart httpd
履行结束后,在浏览器中输入ECS公网IP/phpinfo.php检查PHP信息。如图显现,即PHP装置成功。
至此,LAMP环境建立完结。
“LAMP”:即Linux+Apache+MySQL+PHP,常用网站服务器环境解决计划之一。
“LNMP”:即Linux+Nginx+MySQL+PHP,另一种常用解决计划。
Apache几乎就是为CentOS而生,所以笔者于此选用LAMP计划。相对地,在Debian体系上,我认为LNMP是更好的挑选。当然,Apache与Nginx各有千秋,根据实际需求挑选合适者即可。
4.装置Wordpress
履行装置指令。
yum -y install wordpress
将wp-config.php改为绝对途径,随后将Wordpress移动到Apache的根目录。
cd /usr/share/wordpress ln -snf /etc/wordpress/wp-config.php wp-config.php mkdir /var/www/html/wp-blog mv * /var/www/html/wp-blog/
装置nano文本编辑器。完结后,运用nano编辑wp-config.php文件
yum -y install nano nano /var/www/html/wp-blog/wp-config.php
找到“/** The name of the database for WordPress */”
下面一行改为“define( 'DB_NAME', 'wordpress' );”。
“/** MySQL database username */”
下面一行改为“define( 'DB_USER', 'root' );”
“/** MySQL database password */”
下面一行改为“define( 'DB_PASSWORD', 'Aliyun@123' );”
修正完结后,运用Ctrl+O组合键写入数据,再运用Ctrl+X组合键退出编辑。
这三项即别离为wordpress数据库称号,MySQL用户名,MySQL登陆暗码。
此外,也能够运用nano编辑器,于此处进行其他设置的修正。
编辑后,重启Apache服务以应用更改。
systemctl restart httpd
浏览器中打开ECS公网IP/wp-blog/wp-admin/install.php以进行Wordpress的初期装备。从上至下,依次设置:
“Site Title”:站点称号。
“Username”:办理员用户名。
“Password”:办理员用户暗码。
引荐运用与MySQL相似的高强度暗码以确保安全性。
之后点击Install Wordpress完结设置。
刷新页面,输入用户名与暗码,点击Log In即可进入Wordpress后台。在后台中可
以进行更多的具体设置。
Wordpress装置至此完结。
5.调试及布置FTP
这样装置的Wordpress是英文版的,即便在后台-Settings-General-Site Language选项中,也只要English,而不能挑选中文。
为解决这个问题,需要将中文语言包上传至ECS中Wordpress的对应目录。所以,这里需要用到FTP服务。为ECS建立FTP服务也便于日后更好地办理网站。
首要,在ECS上装置FTP服务。
yum -y install vsftpd
在自己的电脑上也装置FTP服务。
下载并装置FileZilla。
在ECS上修正vsftpd的用户装备文件。
nano /etc/vsftpd/ftpusers
在该文件中的“root”前加一个“#”。
Ctrl+O,回车,Ctrl+X。
修正另一个文件。
nano /etc/vsftpd/user_list
同样在“root”前加一个“#”。
Ctrl+O,回车,Ctrl+X。
“#”:在大都语言中常用的注释符,在一行指令前加上#可使该指令行转变为注释行,使其在程序运行时被忽略并跳过。这个符号也是Linux体系中超级用户“root”的指令提示符。
这两段操作是为了撤销vsFTPd的用户名限制。若没有撤销,将会在后续FTP衔接中导致衔接失利,报错信息为:
指令: USER root
呼应: 530 Permission denied.
过错: 无法衔接到服务器
然后,在阿里云操控台-实例-安全组-装备规矩中,增加用于FTP的21、20端口。
至此,ECS端设置完结。
接下来装备FileZilla。
首要,点击文件-站点办理器,进行如下操作:
“协议”设置为“FTP - 文件传输协议”。
“主机”设置为ECS公网IP。
“端口”设置为“21”。
“加密”设置为“只运用明文FTP”。
“登陆类型”设置为“正常”。
“用户”设置为“root”。
“暗码”设置为你的ECS暗码。
运用快速衔接与其他加密方式的衔接均会导致衔接失利,报错信息为:
指令: AUTH TLS
呼应: 220 (vsFTPd 3.*)
过错: 无法衔接到服务器
这是由于ECS与主机之间没有TLS协议书,安全验证无法经过。
然后,在编辑-设置-衔接-FTP-被动模式中,将“运用服务器的外部ip地址来替代”改为“回到自动模式”
此过程避免FTP不能正确显现文件途径。若没有这样设置,则会呈现以下报错信息:
状态: 服务器发回了不可路由的地址。运用服务器地址替代。
指令: LIST
悉数设置完结后,在站点办理器中点击“衔接”
如图所示,衔接成功。在左右两侧窗口别离挑选好途径作为接收与发送文件的对应途径,即可正常运用。
Wordpress的途径是/var/www/html。对于本ECS而言,这将会是它最常用的FTP途径之一。
至此,FTP服务布置完结。
要更换Wordpress的语言,需下载Wordpress中文版,在此压缩包的\wordpress\wp-content途径中找到language文件夹并解压出来。然后,将language文件夹经过FTP上传至ECS中wordpress的wp-content目录下。
上传完结后,重启apache服务,浏览器进入ECS公网IP/wp-blog/wp-admin/options-general.php,即可更改站点语言为简体中文。
至此,Wordpress调试完结。
Q:既然是从中文版Wordpress里取得中文语言包,为什么不直接装置中文版Wordpress?
A:由于中文版Wordpress更新时刻与英文版不一致,在装置时容易与呈现兼容性BUG。
Q:我直接在Wordpress上传一个满是中文的模板,网站就是中文的了,为什么要在设置里改站点语言?
A:这样做只能让网站“表面上”看起来是中文站点。实际上,无论是网站后台显现仍是直接检查网站源代码,都会发现lang="en-US",也就是说,你的网站在搜索引擎看来其实仍是个英文站点。这样会对网站的开展形成多方面的晦气影响。
6.后记及效果参阅
在wordpress中对站点进行具体的设计与制造之后,笔者获得了首个自己在阿里云ECS上的网站。点击链接检查:二维实验室。
由于工信局备案流程所需时刻较长,而DV型SSL证书的布置需要域名,所以该网站暂时只能经过HTTP端口直连服务器公网IP检查,敬请体谅。请重视笔者之后的文章,未来将会细化论述网站建设方面的经历与心得。
在阿里云上开发的最让我欢喜的,不是免费的服务器。
是无数的文档,材料,与阿里云开发者。
他们是我素未谋面的同好,同学,同志。
当我在开发中遭受意外与困难时,
他们如同繁星一般,
默默地,轻轻地,
点亮我的夜空。
笔者特别在此感谢在本次探索过程中以文档、博客、社区等方式供给协助的诸多有名或无名的阿里云开发者,以及供给这一渠道的阿里云。凝涓流成巨涛,这正是云的魅力,开源的魅力,互联网的魅力,互帮互助的魅力。
我有话说: