更新时间: 2016-09-23 20:01:52       分类: web开发


(2016-08)购买了腾讯云的云服务器并成功在服务器上部署lamp和laravel框架 记录如下:

注: 本文以127.0.1.1指代远程服务器的公网地址

ssh连接

使用ssh命令可以快速连接到服务器主机的终端。

但是首先要知道服务器主机的密码以及用户名。此次服务器采用 Ubuntu Server 14.04 LTS X64 的架构,初始用户名不为root(这跟centOS不一样),而且root用户没有固定密码(使用sudo时根据用户密码动态生成,你在切换到sudo的时候还是输入了你自己的用户密码),不过可以手动指派。

在本地终端运行ssh(用户名user):

ssh user@127.0.1.1

然后输入user的密码就可以成功登陆远程主机。

疑问:没有像github那样的ssh key认证吗

安装LAMP

所有的包全部利用apt-get安装即可

apache2:

sudo apt-get install apache2

mysql:

sudo apt-get install mysql-server mysql-client

(安装过程中要输入密码之类的配置)

php7.0:

由于使用的是14.04 apt默认源里面还没有php7.0,先添加ppa再update然后就可以安装相关组件:

sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install  php7.0-mysql php7.0-curl php7.0-json php7.0-cgi  php7.0 libapache2-mod-php7.0

!遇到的一些问题

刚开始想顺道安装一个phpmyadmin后来安装完毕重启apache2时出现bug:

AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message

无法重启apache2服务,解决办法是,在/etc/apache2/apache2.conf中添加一行:

ServerName localhost

然后

sudo service apache2 restart

即可(注意sudo权限)

mysql远程连接

安装完mysql后果断还是抛弃了pma这种蛋疼的东西,想用mysql-workbench来操控服务器端的数据库。但是mysql默认不允许远程访问,这个需要修改一下用户权限才行。

先在服务器端登陆mysql(用mysql的root账户),然后选择mysql数据库,执行下面的命令来创建一个可以远程访问的用户:

GRANT ALL ON dbname.* to user@'IP' IDENTIFIED BY 'password'

ALL表示新建用户user所拥有的权限,dbname表示可以操控的数据库名字(* 为全部),.后面表示了表,IP就是允许登陆到这里的远程ip地址,可以用%表示任意,后面password是密码。

接着使用FLUSH PRIVILEGES命令刷新数据库权限

然后还需要修改配置文件/etc/mysql/my.cnf,找到下面这行在前面加#注释掉,重启mysql即可:

bind-address = 127.0.0.1

上传代码

上传文件和代码到服务器可以考虑在服务器端安装ftp服务,但是这次采用scp命令,简单快捷的就可以把本地代码文件等上传到服务器的指定目录了。

请注意检查服务器相关目录的写入权限!

scp 命令原型:

scp (-r) path/file user@ip:path

举个例子:

scp -r /var/www/html/laravel user@127.0.1.1:/var/www/html

把本地的/var/www/html/laravel文件夹上传到了服务器的/var/www/html目录下


评论
by out_xu   at   2016-09-23 20:02:18

谢谢明明

by yz   at   2016-10-10 16:58:49

谢谢斑竹