jjzjj

看我如何连夜自建网站背刺我的求职对手们

华为云开发者社区 2023-03-28 原文
摘要:在竞争如此激烈的当下,作为一名IT新人,怎么才能让HR眼前一亮,从万千简历中脱颖而出成为最亮的那个崽呢?

本文分享自华为云社区《【一行代码秒上云】连夜自建网站背刺我的求职对手们 !》,作者:AppCloud小助手。

前言

在竞争如此激烈的当下,作为一名IT新人,怎么才能让HR眼前一亮,从万千简历中脱颖而出成为最亮的那个崽呢?然后我就灵光一闪,现在线上面试如此普及,超链接能点开的可不只是文档啊,为什么非要执着于千篇一律的纸质文档,个人网站它不是更有特点吗?于是我连夜自建个人网站,准备背刺我的竞争对手们!

如果你要问我为啥能这么快建好,那你就是时候了解了解云上开发了,不如浅跟着我了解一下 ,顺便分享一下个人网站搭建~

一、准备工作:我们需要些什么

1.内容管理系统:WordPress,它是使用php语言和MySQL数据库开发的,用户可以在支持 php 和 MySQL数据库的服务器上使用自己的博客。(官网地址:https://wordpress.org/)

2. WinSCP:支持Windows计算机将本地文件上传至Linux服务器

3.开发语言:php

4.应用运行环境:CentOS、Nginx、php、MySQL

5.涉及的云服务:华为云弹性云服务器

二、理清思路:我们怎么搭建?

如下图所示,咱最主要的思路就是将WordPress部署在云服务器上,让它成为一个可以运行的应用,在这个过程中需要配置能够使WordPress正常运行的操作系统和运行环境,也就是我们需要选择Linux操作系统的弹性云服务器ECS,同时还需要在虚拟主机上安装Nginx、php、MySQL运行环境。

分析完需要怎么干之后,具体的操作就来啦!这个实现方式一共有两种;(1)一种只需要开通下弹性云服务器,直接在上面进行部署,配置环境的时候涉及的命令行比较多;(2)一种是再开通个华为云软件开发平台DevCloud在上面直接进行部署运行,这里我们先介绍ECS直接搭建的方式哈,需要另一种操作的欢迎留言cue我~

三、具体步骤:我们怎么操作?

1、开通云服务器,配置Linux操作系统

前往华为云官网-产品-计算-弹性云服务器 ECS-立即购买,开通ECS服务:

1)基础配置

计费模式:按需计费
✓ 区域:华北-北京四(与 DevCloud 项目所在区域保持一致)
✓ 可用区:随机分配
✓ CPU 架构:x86 计算
✓ 规格:sn3.small.1(可通过 1vCPU,1GB 进行搜索过滤)
✓ 镜像:公共镜像 CentOS 7.6 64bit(40GB)

2)网络配置

✓ 网络:vpc-default/subnet-default
✓ 安全组:Sys-WebServer(检查下需要有入向 TCP:8080 端口).
✓ 弹性公网 IP:现在购买
✓ 线路:全动态 BGP
✓ 公网带宽:按带宽计费
✓ 带宽大小:1
✓ 释放行为:随实例释放

3)高级配置

✓ 云服务器名称:默认/自定义
✓ 登录凭证:密码
✓ 密码:自定义(请牢记,后续部署使用)

4)确认配置

✓ 勾选“我已阅读并同意《镜像免责声明》

2、搭建WordPress运行环境

1)安装Nginx

在ECS上执行下列命令(可直接复制命令,并粘贴至命令行工具),下载对应版本的Nginx。

wget http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

执行以下命令,建立Nginx的yum仓库。

rpm -ivh nginx-release-centos-7-0.el7.ngx.noarch.rpm

执行以下命令,安装Nginx。

yum -y install nginx

出现“Complete”,表示Nginx安装完成。

执行以下命令,启动Nginx并设置开机启动。

systemctl start nginx
systemctl enable nginx

使用浏览器访问 “http://弹性IP地址”,显示如下页面,说明Nginx安装成功。

2)安装MySQL

执行以下命令,下载MySQL的Yum Repository。

wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

执行下列命令,下载并安装MySQL5.7

yum -y install mysql57-community-release-el7-10.noarch.rpm

执行下列命令,安装MySQL服务器

yum -y install mysql-community-server --nogpgcheck

出现“Complete”表示MySQL服务器安装完成。

依次执行以下命令,启动MySQL服务并设置开机自启动。

systemctl start mysqld
systemctl enable mysqld

执行以下命令,获取安装MySQL时自动设置的root用户密码,用于加固MySQL。

grep 'temporary password' /var/log/mysqld.log

执行以下命令,并按照回显提示信息进行后续操作,加固MySQL。

mysql_secure_installation

后续会询问是否修改root密码,是否删除匿名用户,是否禁止root远程登录等选项,统统输入“y”,直到命令行显示“All Done”。

3)安装PHP

依次执行以下命令,安装PHP 7和一些所需的PHP扩展。

rpm -Uvh
rpm -Uvh 
yum -y install php70w-tidy php70w-common php70w-devel php70w-pdo php70w-mysql php70w-gd php70w-ldap php70w-mbstring php70w-mcrypt php70w-fpm

出现“Complete”表示php安装完成。

执行以下命令,启动PHP服务并设置开机自启动。

systemctl start php-fpm
systemctl enable php-fpm

执行以下命令打开配置文件/etc/nginx/conf.d/default.conf。

vim /etc/nginx/conf.d/default.conf

按“i”进入编辑模式,编辑“default.conf”文件。将default.conf”里的内容替换为:

server {
        listen       80;
        server_name  localhost;
        #access_log /var/log/nginx/host.access.log  main;
    location / {
        root   /usr/share/nginx/html;
 index  index.php index.html index.htm;    }
    location ~ \.php$ {
        root           html;
 fastcgi_pass   127.0.0.1:9000;
 fastcgi_index index.php;
 fastcgi_param  SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
        include        fastcgi_params;
    }
  }

修改后的“default.conf”内容如下:

按Esc键退出编辑模式,并输入:wq保存后退出。

执行以下命令,重新载入nginx的配置文件。

service nginx reload

执行以下命令,创建并打开“info.php”的测试页面

vim /usr/share/nginx/html/info.php

输入“i”,编辑页面,写入以下内容:

<?php
 phpinfo();
?>

按“ESC”退出编辑模式,并输入“:wq”保存并退出。

使用浏览器访问“http://弹性IP地址/info.php”,显示如下页面,说明Php搭建成功。

4)创建数据库

执行以下命令,在命令行弹出的“Enter password”后面,“安装MySQL”中重新设置的数据库密码,以root用户身份登录MySQL。

mysql -u root –p

执行以下命令,创建一个新的数据库。

CREATE DATABASE wordpress;

其中,“wordpress”为数据库名,可自行设置。

执行以下命令,为数据库创建用户并为用户分配数据库的完全访问权限。

GRANT ALL ON wordpress.* TO wordpressuser@localhost IDENTIFIED BY '!QAZxsw2';

其中,“wordpressuser”为登录数据库的用户名,“!QAZxsw2”为对应密码。

最后执行“Exit”,退出MySQL命令行。

至此,WordPress需要的运行环境已搭建完成,下面开始安装WordPress应用。

3、下载WordPress安装包,上传至服务器

1)下载WinSCP

WinSCP支持Windows计算机将本地文件上传至Linux服务器
下载地址: https://winscp.net/eng/docs/lang:chs

文档协议:SFTP或者SCP,(需保证云服务器的安全组规则包括相应端口号)

安装完毕后,填写弹性云服务器的公网IP、用户和密码,就可以登录WinSCP,从本地传文件至云服务器啦~

2)下载WordPress安装包,并上传至服务器

进入WordPress官网的下载页面(),下载tag.gz格式的软件包至本地。

将下载的WordPress软件包,从本地上传至ECS的/usr/share/nginx/html目录

4、下载WordPress安装包,上传至服务器

1)安装并配置WordPress

通过命令行,进入/usr/share/nginx/html目录下(参考下图),执行下列命令,解压wordpress软件包。

tar -xvf wordpress-6.0.tar.gz

执行以下命令,设置解压后的文件权限。

chmod -R 777 wordpress

浏览器访问“http://服务器IP地址/wordpress”进入安装向导,点击“Let’s go”,进入下一步安装。

输入“创建数据库”中设置的数据库相关信息(数据库名称、用户名称、用户密码),建立WordPress和数据库的连接。输入完成后,点击“Submit”提交信息。

点击“Run the installation”,进入网站信息设置。

设置网站名称、管理员账号密码等信息,然后点击“Install WordPress”,部署WordPress。

部署完成后,跳转至登录页面,输入管理员的用户名、密码,即可登录WordPress。

登陆后即进入WordPress后台。

同时登录http://弹性IP地址/wordpress,可以浏览WordPress客户端界面。

5、释放ECS资源

完成实践后如果不删除弹性云服务器,弹性云服务器会继续消耗资源,因此如果不用的话记得释放资源哦~

以上,就是迅速创建个人网站的具体操作啦,如果有小伙伴对华为云云上实践比较感兴趣的,可以参与下面活动,不仅可以体验实践,还有机会获得赢取HUAWEI WATCH GT2、超高颜值机械键盘、1400华为云资源券、书籍、鼠标等诸多大礼哦~

详情可点击>>>

 

点击关注,第一时间了解华为云新鲜技术~

有关看我如何连夜自建网站背刺我的求职对手们的更多相关文章

  1. ruby - 如何使用 Nokogiri 的 xpath 和 at_xpath 方法 - 2

    我正在学习如何使用Nokogiri,根据这段代码我遇到了一些问题:require'rubygems'require'mechanize'post_agent=WWW::Mechanize.newpost_page=post_agent.get('http://www.vbulletin.org/forum/showthread.php?t=230708')puts"\nabsolutepathwithtbodygivesnil"putspost_page.parser.xpath('/html/body/div/div/div/div/div/table/tbody/tr/td/div

  2. ruby - 如何从 ruby​​ 中的字符串运行任意对象方法? - 2

    总的来说,我对ruby​​还比较陌生,我正在为我正在创建的对象编写一些rspec测试用例。许多测试用例都非常基础,我只是想确保正确填充和返回值。我想知道是否有办法使用循环结构来执行此操作。不必为我要测试的每个方法都设置一个assertEquals。例如:describeitem,"TestingtheItem"doit"willhaveanullvaluetostart"doitem=Item.new#HereIcoulddotheitem.name.shouldbe_nil#thenIcoulddoitem.category.shouldbe_nilendend但我想要一些方法来使用

  3. python - 如何使用 Ruby 或 Python 创建一系列高音调和低音调的蜂鸣声? - 2

    关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我想在固定时间创建一系列低音和高音调的哔哔声。例如:在150毫秒时发出高音调的蜂鸣声在151毫秒时发出低音调的蜂鸣声200毫秒时发出低音调的蜂鸣声250毫秒的高音调蜂鸣声有没有办法在Ruby或Python中做到这一点?我真的不在乎输出编码是什么(.wav、.mp3、.ogg等等),但我确实想创建一个输出文件。

  4. ruby-on-rails - 如何验证 update_all 是否实际在 Rails 中更新 - 2

    给定这段代码defcreate@upgrades=User.update_all(["role=?","upgraded"],:id=>params[:upgrade])redirect_toadmin_upgrades_path,:notice=>"Successfullyupgradeduser."end我如何在该操作中实际验证它们是否已保存或未重定向到适当的页面和消息? 最佳答案 在Rails3中,update_all不返回任何有意义的信息,除了已更新的记录数(这可能取决于您的DBMS是否返回该信息)。http://ar.ru

  5. ruby-on-rails - 'compass watch' 是如何工作的/它是如何与 rails 一起使用的 - 2

    我在我的项目目录中完成了compasscreate.和compassinitrails。几个问题:我已将我的.sass文件放在public/stylesheets中。这是放置它们的正确位置吗?当我运行compasswatch时,它不会自动编译这些.sass文件。我必须手动指定文件:compasswatchpublic/stylesheets/myfile.sass等。如何让它自动运行?文件ie.css、print.css和screen.css已放在stylesheets/compiled。如何在编译后不让它们重新出现的情况下删除它们?我自己编译的.sass文件编译成compiled/t

  6. ruby - 如何将脚本文件的末尾读取为数据文件(Perl 或任何其他语言) - 2

    我正在寻找执行以下操作的正确语法(在Perl、Shell或Ruby中):#variabletoaccessthedatalinesappendedasafileEND_OF_SCRIPT_MARKERrawdatastartshereanditcontinues. 最佳答案 Perl用__DATA__做这个:#!/usr/bin/perlusestrict;usewarnings;while(){print;}__DATA__Texttoprintgoeshere 关于ruby-如何将脚

  7. ruby - 如何指定 Rack 处理程序 - 2

    Rackup通过Rack的默认处理程序成功运行任何Rack应用程序。例如:classRackAppdefcall(environment)['200',{'Content-Type'=>'text/html'},["Helloworld"]]endendrunRackApp.new但是当最后一行更改为使用Rack的内置CGI处理程序时,rackup给出“NoMethodErrorat/undefinedmethod`call'fornil:NilClass”:Rack::Handler::CGI.runRackApp.newRack的其他内置处理程序也提出了同样的反对意见。例如Rack

  8. ruby - 如何每月在 Heroku 运行一次 Scheduler 插件? - 2

    在选择我想要运行操作的频率时,唯一的选项是“每天”、“每小时”和“每10分钟”。谢谢!我想为我的Rails3.1应用程序运行调度程序。 最佳答案 这不是一个优雅的解决方案,但您可以安排它每天运行,并在实际开始工作之前检查日期是否为当月的第一天。 关于ruby-如何每月在Heroku运行一次Scheduler插件?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/8692687/

  9. ruby-on-rails - 如何从 format.xml 中删除 <hash></hash> - 2

    我有一个对象has_many应呈现为xml的子对象。这不是问题。我的问题是我创建了一个Hash包含此数据,就像解析器需要它一样。但是rails自动将整个文件包含在.........我需要摆脱type="array"和我该如何处理?我没有在文档中找到任何内容。 最佳答案 我遇到了同样的问题;这是我的XML:我在用这个:entries.to_xml将散列数据转换为XML,但这会将条目的数据包装到中所以我修改了:entries.to_xml(root:"Contacts")但这仍然将转换后的XML包装在“联系人”中,将我的XML代码修改为

  10. ruby - 如何使用文字标量样式在 YAML 中转储字符串? - 2

    我有一大串格式化数据(例如JSON),我想使用Psychinruby​​同时保留格式转储到YAML。基本上,我希望JSON使用literalstyle出现在YAML中:---json:|{"page":1,"results":["item","another"],"total_pages":0}但是,当我使用YAML.dump时,它不使用文字样式。我得到这样的东西:---json:!"{\n\"page\":1,\n\"results\":[\n\"item\",\"another\"\n],\n\"total_pages\":0\n}\n"我如何告诉Psych以想要的样式转储标量?解

随机推荐