阿里云Ubuntu快速建站

有一个小笑话:

从前有个程序员遇到了一个问题。他想,没事,我懂,用线程就好了。现他有两个问题了。

本人小白,对网站部署什么都不懂,只是申请个阿里云服务器,把我的站点放上去。于是,铺天盖地的问题随之而来。现在总结一下流程,供同样的小白参考。

申请阿里云服务器

1.购买服务器

建站呢首先要有一个服务器。可以购买一个阿里云服务器学生认证后,首月只需10元费用,可以用来练习建站。由于学生身份,申请服务器时很多配置都是不可以更改的,如CPU内存带宽磁盘。但是可以自己选操作系统,可选的有WindowsCentOSUnbuntu。我申请的是申请Ubuntu 14.04作为平台。

2.登陆到管理控制台

申请成功后,可以登录到阿里云的管理控制台,通过左侧产品与服务->云服务器ECS管理服务器。第一次管理时,会让你设置快照规则,如果不懂可以跳过该步骤,接下来会讲解。

3.实例

实例就是指你从阿里云买了多少台服务器。刚刚只买了一台Ubuntu,所以只有一个实例。如果以后有钱了,买了好多台,可以通过实例统一管理。

4.磁盘

磁盘很好理解。刚申请的学生服务器,只能选择40G普通云盘。Ubuntu就住在这块磁盘上。

5.快照

快照简单理解,就是磁盘备份。阿里帮你定期将磁盘备份,你可以在自动快照策略中设置每隔多久备份一次,备份哪个磁盘。可以在快照列表中看到已经备份的磁盘镜像。快照目前是免费的,不用白不用。

6.其他选项

镜像安全组我也不知道是什么鬼。标签管理没用过。操作日志顾名思义。

7.实例管理

当然,我们的目的是建站,所以实例->管理才是最重要的。在实例->更多中可以关机、重启、改密码等。进入实例->管理后,实例详情允许我们修改实例名称、密码,查看Ubuntu的硬件、IP等。下方的本实例磁盘快照安全组安全防护一看就明白。


管理我的Ubuntu

1.用户名和密码

管理Ubuntu,一定要知道用户名和密码。用户名默认是root,不需要改。密码建议你起一个好记的,修改方式为基本信息->更多->重置密码,经手机验证后即可,假设密码Zhangsan123。修改密码后,需重启Ubuntu才生效。

2.两种方式

实例详情允许我们以两种方式管理Ubuntu: 连接管理终端SSH

连接管理终端

  • 连接管理终端,通过网页即可进入Ubuntu命令行。首次点击连接管理终端,会弹出一个6位数密码,该密码只用于从网页管理Ubuntu,也可以修改,如123456。然后在输入管理终端密码中输入密码123456,即可进入命令行。

  • 进入命令行后,以用户名root、密码Zhangsan123进行验证。通过后即弹出欢迎界面。

连接管理终端方便快捷,但是显得不够专业。于是SSH满足了我们装逼的需求

SSH

  • 我的电脑是Windows,可以下载PuttySecure Shell Client。如果你是Mac或Linux用户,可参考基本信息->更多->连接帮助。用SSH登陆,还需一个IP地址,这个IP就是配置信息->公网IP,也可通过基本信息->更多->连接帮助查询。

  • OK,现在有了用户名root、密码Zhangsan123、IP地址,就可以利用SSH装逼了。我强力推荐Secure Shell Client,因为它附带File Transfer,可以很方便地使本地Windows与Ubuntu进行文件互动,比如上传、下载、删除。后续我就会用到File Transfer

3.准备部署

我们申请到的服务器,是一个空白的Linux。不搭建好经典的LAMP,别人是访问不到我们的站点的。


阿里一键安装Web环境

1.下载一键安装包

自己部署Web环境,对小白来说真是如噩梦一般。阿里工程师就为我们提供了傻瓜式一键安装包。这是官方说明,这是另一个比较好的教程
这个安装包是收费的,人民币2元。我不会告诉你,在上面这个教程中,可以下载到。其实我用的就是这位前辈分享的资源。

  • 使用这个安装包,会自动卸载以前装过的mysql、apache等,所以要先备份。

  • 如果已经安装过一次一键安装包,再次安装时会清理之前一键安装包安装过的环境,所以要备份/alidata目录。

2. 上传安装包到Ubuntu

在Windows上,将一键安装包解压缩后,用File Transfersh-1.4.4文件夹上传到Ubuntu的/root下。官方推荐用xshell+Xftp,我认为Secure Shell Client及其File Transfer完全可以胜任。

3.Ubuntu上运行安装包

使用连接管理终端SSH登入到命令行后,依次执行:

   cd /root
chmod –R 777 sh-1.4.4
cd sh-1.4.4
./install.sh

4.选择版本

接下来选择要LAMP(Linux+Apache+MySQL+PHP)中AMP版本。命令行中会给出提示,让你用数字表示你的选择。这里选:apache服务器数字2、apache版本2.4.20数字2、php版本5.5.7数字3、mysql版本5.5.40数字2

5.发呆

大约半个小时安装完毕。可以用netstat –tunpl检查一下运行状态的服务及端口

也可以cat /alidata/website-info.log查看刚才安装软件的版本信息。与你网站所有相关的东西,都在/alidata这个文件夹下。

6.修改mysql密码

用安装工具安装的mqsql及ftp,会使用保存在acount.log中的默认密码,可通过cat /root/sh-1.4.4/acount.log查看。

这个密码并不友好,可以通过如下命令修改:

    mysqladmin –uroot –p旧密码 password 新密码
  • -u和root之间没有空格

  • -p和旧密码之间没有空格

  • password和新密码之间有空格。

比如把新密码也改为root,方便记忆:

    mysqladmin –uroot –p9ad0cd53c9 password root

7.远程管理mysql

这里介绍phpMyAdminMySQL-Front

  • phpMyAdmin
    一键安装包已经为我们下载好了phpMyAdmin,就在/alidata/www/phpwind下。在浏览器输入http://公网IP/phpmyadmin,就可以访问phpMyAdmin了。

  • MySQL-Front
    要让你的Windows有权访问mysql。进入mysql,执行

    use mysql;
select user,host from user;

看看谁有权限访问mysql。很不幸,默认情况下别人都没有权限。接下来为我的windows赋予这样的权限:

    grant all privileges on *.* to "root"@"%" identified by "mysql密码";
flush privileges;

再执行select user,host from user;就可以看见,你的Windows已经有权限了。接下来打开MySQL-Front,简单配置一下即可使用了。
  

8.完成

至此,已经完成Web环境的搭建。


搭建Web站点

1.上传站点

File Transfer把站点目录XXX(如stationForWeb)上传到/alidata/www/phpwind目录下,即可通过http://公网IP/XXX访问自己的站点了。

2.修改配置

一键安装包的默认站点目录是/alidata/www/phpwind,所以通过http://公网IP访问服务器时,总是进入了phpwind这个自带的网站。如果希望进入自己创建的站点,可以:

  1. 将XXX上传到/alidata/www/下,即与phpwind平级。并修改目录所属的组:

    cd /alidata/www/
chown .www /alidata/www/XXX -R
  1. 修改apache的虚拟主机配置文件,默认情况下只有一个phpwind.conf文件。先将它替换为XXX.conf

    cd /alidata/server/httpd/conf/vhosts/
mv phpwind.conf XXX.conf
  1. vim修改XXX.conf内容为:

  2. 重启Apache服务:/etc/init.d/httpd restart

  3. 之后,通过http://公网IP访问时,就会进入自己的站点了。

3.删除phpwind

phpwind这个网站是一键安装包自带的,没有用,删了也无妨。在删除前,要把phpMyAdmin目录转移到XXX目录下,否则phpMyAdmin将无法使用。

    cd /alidata/www
mv phpwind/phpmyadmin XXX
rm –r phpwind

4.发布多个站点

如果我想发布多个站点,比如说想多加个test。则把test站点的文件夹,复制到/alidata/www/XXX下即可。可问题是,XXX是一个站点,test是另一个站点,二者没有任何关系。把test的文件夹复制到XXX下,并不符合逻辑,也不容易维护。

如果我想使每个站点都保持独立性,即在/alidata/www各每个站点有自己的文件夹,可以利用公网IP的不同端口。除了80外,还可选88、8011、8088、8888等等。

  1. 修改配置文件httpd.conf,监听多个端口

    cd /alidata/server/httpd/conf/
vim httpd.conf
  1. 找到Listen 80,在下面加一行Listen 8088

  2. 修改虚拟主机的配置文件,即之前的XXX.conf。我们不妨将它取个更合适的名字,比如httpd-vhosts.conf

    mv XXX.conf httpd-vhosts.conf
vim httpd-vhosts.conf
  1. 添加一个监听8088的虚拟主机

  2. 重启http服务:/etc/init.d/httpd restart

  3. 把test文件夹上传到/alidata/www下,通过http://公网IP:8088就可以访问了。


网站部署步骤总结

  1. 复制sh-1.4.4到/root下,改为777权限,执行./install.sh,选择版本安装。

  2. 可选修改mysql的密码。

  3. 可选如果想使用MySQL -Front,需进入mysql命令行,获取权限。

  4. 上传站点目录到www。

  5. 可选修改/alidata/server/httpd/conf/httpd.conf,添加监听的端口

  6. 修改/alidata/server/httpd/conf/vhosts/phpwind.conf,重命名为httpd-vhosts.conf,修改里面的目录名、日志名。多端口的话需添加Virtual Host

  7. 重启http服务。

  8. 可选将phpMyAdmin导出到站点目录下,删除phpWind目录。

阿里云Ubuntu快速建站的更多相关文章

  1. 云服务器 ECS > 建站教程 > 部署 LAMP (CentOS 7.2 ,Apache版本:2.4.23, Mysql 版本:5.7.17 , Php版本:7.0.12)

    云服务器 ECS > 建站教程 > 部署 LAMP (CentOS 7.2) 部署 LAMP (CentOS 7.2) 文档提供方:上海驻云信息科技有限公司    更新时间:2017-06 ...

  2. Python快速建站系列-Part.Three-注册和登录

    |版权声明:本文为博主原创文章,未经博主允许不得转载. 上一个Part已经给TSSS编好了一个简单的Web服务,网页的基础模版也写好了,那从这个Part开始就慢慢增加编写功能. 先写基础功能:注册和登 ...

  3. Python快速建站系列-Part.One-组装开发环境

    |版权声明:本文为博主原创文章,未经博主允许不得转载. 源代码都在github上:SmallStudyStation 现在是个demo,但回来会租个服务器,等功能完善了放到服务器上挂着,域名jusot ...

  4. 在阿里云Ubuntu 14.04 Linux服务器上安装docker

    参考 How To Install and Use Docker: Getting Started 这篇最靠谱的文档在阿里云 Ubuntu  14.04 服务器上成功安装 docker . ---- ...

  5. 【站长起步】阿里云+Ubuntu+java 7+ Tomcat 7 +Nginx1.6 +Mysql 5.6

    本文记载了在阿里云ubuntu+java 镜像环境下搭建站点server环境中遇到的的错误和解决方式. 作为一个年轻人,是肯定不会去用alidata这个现成的环境的.怎么办? 所有删除.立刻创建一个 ...

  6. 阿里云Ubuntu部署java web - 文件夹

    文件夹(点击章节标题阅读): 阿里云Ubuntu部署java web(1) - 系统配置         ssh链接server(使用终端远程链接)        加入用户        给用户赋予运 ...

  7. Uix Kit 快速建站前端开发套件-工具箱

    这个产品维护已经有一年了(由于业务需求不同,目前没有做中文版,产品本身是针对国外网站),自己本身是做UI出生,开发只是业余爱好,仅仅作为平时工作的需要.杂七杂八会一些前后端开发.并非职业码农! 我是一 ...

  8. 本地Windows远程桌面连接阿里云Ubuntu服务器

    本地Windows远程桌面连接阿里云Ubuntu 16.04服务器: 1.目的:希望通过本地的Windows远程桌面连接到阿里云的Ubuntu服务器,通过远程桌面图形界面的方式操作服务器. 2.条件: ...

  9. 阿里云Ubuntu下tomcat8.5配置SSL证书

    环境 阿里云ubuntu(18.04)服务器 阿里云申请的域名 Tomcat8.5.7 jdk1.8 免费型SSL证书 SSL证书申请 登录阿里云的官网,登录后在菜单中选择SSL证书(应用安全) 进入 ...

随机推荐

  1. Sql Server多种分页性能的比较

    一.前言 因为工作关系,遇到了非常大的数据量的分页问题,数据总共有8000万吧,这个显然不是简单的分页能够解决的,需要从多多方面考虑,从分表.分库等等.但是这个也让我考虑到了分页性能的问题,在不同数据 ...

  2. [bzoj3196][tyvj1728]普通平衡树

    真是太差了,到现在才打出一个平衡树的板子.. 感谢blackjack大佬提供的数组版treap板子!!基本完全照搬,blackjack太神啦! 但目前我只会这几个最基本的操作(说白了STL的(mult ...

  3. 关于RTKLIB资料整理和学习

    最近要做一个关于rtk的项目,采用rtklib源码基础上进行移植,由于我在嵌入式方面和rtk方面都是小白,所以无论是嵌入式通信还是rtk都得从头学起.嵌入式方面打算用stm32进行移植,现在已经基本掌 ...

  4. netty学习记录1

    最近在学习netty,看的是<netty权威指南 第2版>. 然后看的同时也把书上面的代码一行行敲下来做练习,不过到第三章就出问题了. 按照书上讲的,sever/client端都需要继承C ...

  5. 《Cracking the Coding Interview》——第17章:普通题——题目3

    2014-04-28 22:18 题目:计算N的阶乘尾巴上有多少个零? 解法:计算5的个数即可,因为2 * 5 = 10,2的个数肯定比5多.计算5的个数可以在对数时间内搞定. 代码: // 17.3 ...

  6. python学习笔记十一:操作mysql

    一.安装MySQL-python # yum install -y MySQL-python 二.打开数据库连接 #!/usr/bin/python import MySQLdb conn = MyS ...

  7. 【Power of Two】cpp

    题目: Given an integer, write a function to determine if it is a power of two. 代码: class Solution { pu ...

  8. python - web自动化测试 - 元素操作 - 定位

    # -*- coding:utf-8 -*- ''' @project: web学习 @author: Jimmy @file: find_ele.py @ide: PyCharm Community ...

  9. springboot相关链接

    springboot的三种启动方式 https://blog.csdn.net/my__Sun_/article/details/72866329 springboot学历历程 https://www ...

  10. 一个初学者的辛酸路程-jQuery

    前言: 主要概要: 1.HTML+CSS补充 2.DOM事件 3.jQuery示例 内容概要: 1.布局 代码如下 <!DOCTYPE html> <html lang=" ...