服务器环境配置

jdk

通过下载解压缩安装

  • 核验本机是否以已经安装open jdk

    rpm -qal | grep jdk
    
  • 如果本机已经安装,则清理删除

    yum remove +jdk文件名
    
  • 进入根目录,并创建developer目录

    cd /
    sudo mkdir developer
    cd developer
    ll
    
    // 创建setup文件夹,用于存放安装包
    sudo mkdir setup
    cd setup/
    
  • 在setup目录下,下载jdk

    sudo wget http://learning.happymmall.com/jdk/jdk-7u80-linux-x64.rpm
    
  • 从ORACLE官网下载

    // 这种下载方式,需要带token
    sudo wget+ORACLE官网下载链接
    
    // 这种下载,需要删除后面的扩展名
    sudo mv 带扩展名的jdk +jdk-7u80-linux-x64.rpm
    
  • 添加执行权限

    sudo chmod 777 jdk-7u80-linux-x64.rpm
    ll
    
  • 安装

    sudo rpm -ivh jdk-7u80-linux-x64.rpm
    
  • 查看所安装jdk的位置

    cd /usr/java/jdk1.7.0_80/
    ll
    
  • 配置环境变量

    cd ..
    sudo vim /etc/profile
    
    // 直接在下面一行,添加一行代码
    // 按i进入编辑模式,
    // 按:wq保存退出
    export JAVA_HOME=/usr/java/jdk1.7.0_80
    export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    export MAVEN_HOME=/developer/apache-maven-3.0.5
    export NODE_HOME=/usr/local/node-v4.4.7-linux-x64
    export RUBY_HOME=/usr/local/ruby
    export CATALINA_HOME=/developer/apache-tomcat-7.0.73
    
    export PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin:$MAVEN_HOME/bin:$NODE_HOME/bin:/usr/local/bin:$RUBY_HOME/bin
    
    
    export LC_ALL=en_US.UTF-8
    
  • 使配置生效

    source /etc/profile
    
  • 查看是否安装,以及安装的版本

    java -version
    

tomact

  • 进入developer目录

    cd /developer
    ll
    
  • 下载

    sudo wget http://learning.happymmall.com/tomcat/apache-tomcat-7.0.73.tar.gz
    
  • 解压

    sudo tar -zxvf apache-tomcat-7.0.73.tar.gz
    
  • 查看

    ll
    
  • 配置环境变量

    sudo vim /etc/profile
    
    // 直接在下面一行,添加一行代码
    // 按i进入编辑模式,
    // 按:wq保存退出
    
    export CATALINA_HOME=/developer/apache-tomcat-7.0.73
    $CATALINA_HOME/bin:
    
  • 将压缩包移动到setup目录

    sudo mv apache-tomcat-7.0.73.tar.gz setup/
    
  • 进入setup目录,查看

    cd setup/
    ll
    
  • 返回到developer/目录

    cd ..
    ll
    
  • 进入tomcat目录,编辑字符集

    cd apache-tomcat-7.0.73/
    sudo vim conf/server.xml
    
    // 使用 / 搜索8080,使用:noh去掉高亮
    // 在redirectPort="8433" 后面插入
    URIEncoding="UTF-8"
    
  • 进入bin目录,运行.startup.sh

    cd bin
    sudo ./startup.sh
    
  • 出现Tomcat started,浏览器访问出现猫,表示启动成功

  • 配置防火墙

    #tomcat remote debug port
    -A INPUT -p tcp -m tcp --dport 5005 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 8080 -j ACCEPT
    

maven

  • 进入developer目录

    cd ..
    ll
    
  • 下载

    sudo wget http://learning.happymmall.com/maven/apache-maven-3.0.5-bin.tar.gz
    
  • 查看并解压

    ll
    sudo tar -zxvf apache-maven-3.0.5-bin.tar.gz
    ll
    
  • 配置环境变量

    export MAVEN_HOME=/developer/apache-maven-3.0.5
    $MAVEN_HOME/bin:
    
  • 将压缩包移动到setup下面

    sudo mv apache-maven-3.0.5-bin.tar.gz setup/
    ll
    
  • 验证

    mvn -version
    

vsftpd

  • 检测是否有安装

    rpm  -qa | grep vsftpd
    
  • 卸载

    sudo yum remove vsftpd
    
  • 安装

    sudo yum -y install vsftpd
    
  • 创建一个ftpuser(它没有登录云服务器的权限,只有ftp的权限)

  • 在跟目录下创建一个文件夹product

    cd /
    sudo mkdir product
    cd product/
    ll
    
    // 创建一个目录ftpfile
    sudo mkdir ftpfile
    
    //添加一个匿名用户
    sudo useradd ftpuser -d /product/ftpfile -s /sbin/noloin
    
    sudo useradd ftpuser -d /img/ -s /sbin/noloin
    
    // 修改ftpfile文件夹的权限
    sudo chown -R ftpuser.ftpuser ./ftpfile/
    sudo chown -R ftpuser.ftpuser /img/
    ll
    
    // 重置ftpuser的密码(123456)
    sudo passwd ftpuser
    
    // 进入/etc/vsftpd/目录下
    cd /etc/vsftpd/
    ll
    
    // 把刚添加的匿名用户添加到chroot_list里面
    sudo vim chroot_List
     vim chroot_list
     chroot_list
    // 添加一行 
    
    // 查看添加的ftpuser用户
    cat chroot_list
    ftpuser
    ll
    
  • 修改安全策略

    sudo vim /etc/selinux/config
    // 检查一下 SELINUX是否是disabled
    SELINUX=disabled
    
    // 为了避免验证的时候,遇到550访问错误
    sudo setsebool -P ftp_home_dir 1
    ll
    
  • 备份原有的vsftpd.conf文件

    sudo mv vsftpd.conf vsftpd.conf.bak
    
  • 下载新的文件

    sudo wget http://learning.happymmall.com/vsftpdconfig/vsftpd.conf
    
  • 重启

    sudo service vsftpd restart
    
  • 修改防火墙

    外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 防火墙配置

开发阶段开放3306端口给MySQL,是为了客户端访问

#vsftpd
-A INPUT -p TCP --dport 61001:62000 -j ACCEPT
-A OUTPUT -p TCP --sport 61001:62000 -j ACCEPT

-A INPUT -p TCP --dport 20 -j ACCEPT
-A OUTPUT -p TCP --sport 20 -j ACCEPT
-A INPUT -p TCP --dport 21 -j ACCEPT
-A OUTPUT -p TCP --sport 21 -j ACCEPT

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

nginx

  • 进入developer目录

    cd /developer/
    ll
    cd setup/
    
  • 下载

    sudo wget http://learning.happymmall.com/nginx/linux-nginx-1.10.2.tar.gz
    
  • 安装依赖

    sudo yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel
    
  • 解压

    sudo tar -zxvf linux-nginx-1.10.2.tar.gz
    ll
    
  • 进入nginx解压好的目录nginx-1.10.2,进行编译

    cd nginx-1.10.2/
    ll
    sudo ./configure
    // 处理.c扩展名的文件
    sudo make
    // 执行
    sudo make install
    
  • 配置防火墙

  • 查看nginx目录

    whereis nginx
    
  • 进入/usr/local/nginx/

    cd /usr/local/nginx/
    ll
    
    // 进入conf
    cd conf
    
    //编辑nginx.conf
    sudo vim nginx.conf
    // 按i进入编辑模式
    // 在HTTPS节点上,增加如下代码
    include vhost/*conf;
    // 按:wq保存退出
    
  • 在conf文件夹下面,创建一个vhost文件夹

    ll
    sudo mkdir vhost
    cd vhost/
    ll
    
    // 下载4个反向代理配置文件
    sudo wget http://learning.happymmall.com/nginx/linux_conf/vhost/admin.happymmall.com.conf
    sudo wget http://learning.happymmall.com/nginx/linux_conf/vhost/happymmall.com.conf
    sudo wget http://learning.happymmall.com/nginx/linux_conf/vhost/img.happymmall.com.conf
    sudo wget http://learning.happymmall.com/nginx/linux_conf/vhost/s.happymmall.com.conf
    
  • 启动nginx

    cd ..
    cd ..
    ll
    cd sbin/
    ll
    // 执行
    sudo ./nginx
    
  • 检查配置文件是否有语法错误

    nginx -t
    
  • 配置文件改变,需要重新启动

    进入nginx可执行目录sbin下,输入命令
    ./nginx -s reload 
    
  • 停止

    安装路径下的/nginx/sbin/nginx -s stop
    // 或者
    nginx -s quit
    
  • 查看进程

    ps -ef | grep nginx
    
  • 杀死进程

    kill -HUP【Nginx主进程号(即查看进程命令查到的PID)】
    
  • 防火墙

    -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
    
    -A INPUT -j REJECT --reject-with icmp-host-prohibited
    -A FORWARD -j REJECT --reject-with icmp-host-prohibited
    

    外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 虚拟域名配置

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

用哪个操作系统下的浏览器测试,就修改哪个操作系统下的hosts

  • autoindex为on,资源转移到文件夹之后,自动创建目录

  • autoindex为off,目录的关闭的,nginx是403 ,里面的资源是不受影响的,但是前端资源img.hscoder.top和www.hscoder.top是需要关闭这个autoindex的

  • 下载网站常用on

mysql

版本:5.1.73

  • dql

    (data query language)数据查询语言 
    select操作
    
  • dml

    (data manipulation language)数据操作语言
    insert操作 delete操作 update操作
    
  • ddl

    (data defination language)数据库定义语言
    create table操作 create view操作
    
  • dcl

    (data control language)数据库控制语言
    grant操作等
    
  • 核验本机是否安装mysql

    sudo rpm -qa | grep mysql-server
    
  • 安装

    sudo yum -y install mysql-server
    
  • 修改字符集

    https://blog.csdn.net/whd526/article/details/54894559?depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-4&utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-4

    sudo vim /etc/my.cnf
    
    // 按i进入编辑模式
    // 在user=mysql下面,添加如下代码
    character-set-server=utf8
    defeult-character-set=utf8
    
    // 按:wq保存退出
    
  • 手动启动

    sudo service mysqld start
    
  • 启动报错

    200324 17:05:05 [ERROR] Fatal error: Can’t open and lock privilege tables: Table ‘mysql.host’ doesn’t exist

    // 查看错误日志
    cat /var/log/mysql.log
    

    参考链接:https://blog.csdn.net/Qiana_/article/details/79839901

  • 解决办法

     Mysql报错Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist
    
    安装mysql后,启动时候没有启动成功,查看了下日志报错如下:---------------------------------------------
    
    1   可以:初始化mysql:mysql_install_db
    
    2   目录权限问题chown -R mysql:mysql  /var/lib/mysql
    
    [root@localhost local]# less /var/log/mysqld.log
    1、查看报错信息如下:
    [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist
    
    2、经过查阅资料得知。要敲如下命令解决:
    mysql_install_db –usrer=mysql datadir=/var/lib/mysql
    datadir是我的mysql存放文件目录
    
    3、然后重启mysql还是不行:
    MySQL Daemon failed to start.
    正在启动 mysqld:                                          [失败]
    
    4、然后试了下单独的命令,启动完成
    mysql_install_db
    
    5、启动mysql服务
    [root@mysql mysqld]# /etc/init.d/mysqld restart
    停止 mysqld:                                              [确定]
    正在启动 mysqld:                                         [确定]
    
  • 配置自启动

    sudo chkconfig mysqld on
    
  • 查看是否自启动

    sudo chkconfig --list mysqld
    // 2-5都是on即OK
    
  • 配置防火墙

    // 编辑防火墙配置
    suod vim/etc/sysconfig/iptables
    
    // 将以下配置添加到防火墙
    #mysql port
    -A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT
    // 按:wq保存退出
    
    // 重启防火墙
    sudo service iptables restart
    
    
  • 重启

    sudo service mysqld restart;
    
  • 登录mysql

    mysql -u root
    
  • 查看已有用户

    select user,host,password from mysql.user;
    
  • 修改密码

    set password for root@localhost = password('rootpassword');
    // 显示0 rows affected,其实已经生效
    // 查看是否生效
    select user,host,password from mysql.user;
    
    set password for root@机器名 = password('rootpassword');
    
    set password for root@iz2ze2mylql8b5op2lhkukz = password('rootpassword');
    
    set password for root@127.0.0.1 = password('rootpassword');
    
    // 查看是否生效
    select user,host,password from mysql.user;
    
    // 退出
    exit
    
  • 使用带密码的root进行登录

    // 拒绝不输入密码,用自己设置是密码进行登录
    mysql -u root -p
    
    
  • 删除匿名用户

    // 查看是否有匿名用户
    select user,host,password from mysql.user;
    
    delete from mysql.user where user='';
    delete from mysql.user where host='%';
    delete from mysql.user where user='yourusername';
    // 查看是否生效
    select user,host,password from mysql.user;
    
  • 刷新

    flush privileges;
    
  • 插入一个新用户

    insert into mysql.user(host,user,password) values("localhost","mall",password("mallpassword"));
    
    // 查看
    select user,host,password from mysql.user
    
  • 创建一个database

    create database `mall` default character set utf8 COLLATE utf8_general_ci;
    
  • 查看数据库中的表

    show databases;
    
  • 给mmall本地用户赋予database所有权限(多余的localhost不给)

    grant all privileges on mall.* to mall@localhost identified by 'mallpassword';
    
  • 给账号开通外网权限(不限权限)

    grant all privileges on mmall.* to 'yourusername' @'%' identified by 'mallpassword';
    
    grant all privileges on mall.* to mall@'%' identified by 'mall' with grant option;
    
    // 这个生效
    grant all privileges on *.* to mall@'%' identified by 'mallpassword' with grant option;
    
    grant all privileges on mall.* to 'mall'@'%' identified by 'mallpassword';
    
    grant all privileges on mall.* to mall@'%' identified by 'mallpassword' with grant option;
    
    grant all privileges on *.* to mall@'%' identified by 'mallpassword' with grant option;
    
    // to后面有单引号,@后面有单引号,百分号是开放外网权限
    // mall改成*.*,查看所有数据库的权限
    #grant all privileges on 数据库名.表名 to '用户名'@'%' identified by '密码';
    
    // 查看
    select * from mysql.user\G;
    
  • 给指定用户,指定IP,指定表,开放指定权限

    grant select,insert,update on mmall.*to yourusername@'192.11.11.11' identified by 'yourpassword'
    
  • 刷新

    flush privileges;
    
  • 退出

    exit
    
  • 导入sql文件

    cd product/
    ll
    cd /developer/
    ll
    
    // 下载
    sudo wget http://learning.happymmall.com/mmall.sql
    
    // 登录mysql
    mysql -u root -p
    
    // 在导入sql之前进入database
    show databases;
    
    // 使用mall这个database
    use mmall;
    
    // 查看里面的表
    show tables;
    
    // 导入下载的sql文件
    source /developer/mall_rd.sql
    
    // 查看表
    show tables;
    
    // 格式化显示表
    select * from mall_user\G;
    select * from mall_product\G;
    // 退出
    exit
    
  • 字符集查看

    show variables like '%char%';
    alter mall name character set utf8;
    
    [client]
    default-character-set=utf8
    /*[mysqld]*/
    character-set-server=utf8
    
    // 修改
     set names 'utf8';
     // 强制生效
     flush privileges;
    

git

  • 下载

    cd setup/
    ll
    sudo wget http://learning.happymmall.com/git/git-v2.8.0.tar.gz
    
  • 安装git依赖

    sudo yum -y install zlib-devel openssl-devel cpio expat-devel gettext-devel curl-devel perl-ExtUtils-CBuilder perl-ExtUtils- MakeMaker
    
  • 解压

    sudo tar -zxvf git-v2.8.0.tar.gz
    
  • 进入解压的 git-v2.8.0目录

    cd  git-2.8.0/
    ll
    
  • 执行

    sudo make prefix=/usr/local/git all
    sudo make prefix=/usr/local/git install
    
  • 配置全局命令

    sudo vim /etc/profile
    
    // 按i进入编辑模式
    // 在$JAVA_HOME/bin:后面添加如下代码
    /usr/local/git/bin:
    
    // 使配置生效
    source /etc/profile
    
  • 查看版本

    git --version
    
  • 配置git用户名

    git config --global user.name "huangsheng"
    git config --global user.email "2119347498@qq.com"
    
    // 忽略换行符转换
    git config --global core.autocrlf false
    
    // 避免中文乱码
    git config --global core.quotepath off
    
    // 配置gui编码
    git config --global gui.encoding utf-8
    
  • git配置

    参考链接:https://www.cnblogs.com/EasonWu/archive/2012/11/27/git-windows-setup-by-cygwin.html

    git config --global user.name "huangsheng" 
    git config --global user.email "2119347498@qq.com" 
     
     // 忽略linux系统和windows系统之前的换行符转换问题
     git config --global core.autocrlf false
     
     // 避免中文乱码
     git config --global core.quotepath false
     
     // 配置GUI变编码
     git config --global gui.encoding utf-8
    
    // 开启颜色显示
    git config --system color.ui true
    
    // 查看git的所有设置
    	
    git config -l
    
  • 配置ssh公钥

    ssh-keygen -t rsa -C "2119347498@qq.com"
    ssh-add ~/.ssh/id_rsa
    
    // 如果出现Could not open a connection to your authentication agent
    // 认证的代理
    eval `ssh-agent`
    ssh-add ~/.ssh/id_rsa
    
    // 查看公钥
    cat ~/.ssh/id_rsa.pub
    // 复制此公钥到码云添加
    

vsftpd虚拟用户

  • 检查yum仓库

    yum clean all
    yum repolist
    
  • 列出yum中可用的版本

    yum list vsftpd --showduplicates | sort -r
    yum list | grep vsftpd 
    
  • 安装vsftpd

    yum install vsftpd -y
    
  • 打开服务

    systemctl start vsftpd
    service start vsftpd
    
    // 查看是否自启动
    chkconfig --list|grep vsftpd
    
    service vsftpd restart
    // 开启启动
    enable vsftpd
    chkconfig vsftpd on
    
    //关闭防火墙
    systemctl stop firewalld
    service iptables stop
    
    // 让防火墙开启不启动
    disable firewalld
    
    // 查看SELINUX是否开启
    getenforce
    如果是Enforcing则是开启的
    
    // 关闭SELINUX
    setenforce 0
    
    //查看是否关掉
    getenforce
    如果是permissive则是关闭的
    
    // 永久关闭SELINUX
    vim /etc/sysconfig/selinux
    将SELINUX=disabled
    
    selinux是内核加强级的防火墙,必须重启电脑才能生效
    
    history查看历史命令
    
  • 创建虚拟账号

    vim /etc/vsftpd/loginusers
    // 不要出现空行或者多余的空格
    ftp1
    123
    
    // 对用户账号和密码进行加密,机密的文件名在原有文件名后加.db
    db_load -T -t hash -f /etc/vsftpd/loginusers /etc/vsftpd/loginusers.db
    
    //查看是否有加密文件
    ll /etc/vsftpd/loginusers*
    
    // 给加密的文件设置权限660,不希望普通用户看到
    chmod 60 /etc/vsftpd/loginusers*
    
  • 编辑账号和密码处理的库文件

    // 等用户登录注册的时候,检测密码是否正确
    vim /etc/pam.d/ckvsftpd
    
    account		required	pam_userdb.so	db=/etc/vsftpd/loginusers
    auth		required	pam_userdb.so	db=/etc/vsftpd/loginusers
    
    
    
  • 配置vsftpd.conf文件

    // 让配置文件知道要去检测的文件是ckvsftpd
    vim /etc/vsftpd/vsftpd.conf
    注释原有的#pam_service_name=vsftpd,该代码默认去找检测的文件文件是vsftpd,而自己配置的是ckvsftpd
    添加一行代码
    #pam_service_name=ckvsftpd // 虚拟用户信息认证文件名称
    
    ctrl+z 打入后台,复制ckvsftpd到剪切板
    fg调回前台,粘贴ckvsftpd
    
    // 在vsftpd.conf中 开启虚拟用户
    guest_enable=YES
    
    // 在vsftpd.conf中设置虚拟账号操作的用户身份是啥
    guest_username=ftp
    
    // 保存退出
    :wq
    
    // 重启服务
    systemctl restart vsftpd
    
    // 测试一直设置的虚拟用户是否成功
    // 查看本机ip
    ifconfig | less
    
    // 连接
    ssh root@101.200.168.166
    出现Last login即OK
    
    // 安装lftp
    yum install lftp -y
    
    // 测试使用ftp1是否可以登录,虽然ftp的用户名开始设置的是ftp1,但是经过guest_username=ftp,名字换成了ftp1,这里-u后面要用换名字之后的ftp
    
    lftp localhost -u ftp
    密码输入123
    返回lftp ftpuser1@localhost:~>  输入ls
    'ls' at 0 [Sending commands...]即为等待过程
    出现drwxr-xr-x 20 0 + 日期+pub 即OK
    pub是ftp用户的家目录,ftp的默认用户家目录在var/ftp是因为,ftp用户信息在/etc/passwd中
    
    // 查看系统所有用户
    less /etc/passwd
    
    
    
  • 虚拟账号家目录独立设定

    mkdir /ftp
    虚拟用户在登录之后,上传文件、下载文件是以ftp的身份进行的,所以虚拟用户对这个目录要要写权限
    
    // 查看/ftpuserhome目录权限
    ll -d /ftp/
    
    // 这个目录里将来创建的所有文件,都是属于ftp用户组
    chgrp ftp /ftp/
    
    //这个目录里将来创建的所有文件和所属组,保持一致
    chmod g+s /ftp/
    
    // 不同的用户创建不同的家目录
    mkdir /ftp/ftp1
    // mkdir /ftp/ftp{1,2,3}
    
    // 查看ftp1、ftp2、ftp3是否属于这个用户组
    ll /ftp/
    
    // 在vsftpd.conf里修改虚拟用户家目录
    vim /etc/vsftpd/vsftpd.conf
    local_root=/ftp/ftp1
    如果多个用户ftpuser1可用$USER,配置user_sub_token=$USER,一次性指定多个家目录
    :wq
    
    // 重启
    systemctl restart vsftpd
    service vsftpd restart
    
    
    // ftpuser1 ftpuser2 ftpuser3是空的,为了看效果
    // > 重定向符号,快速创建文件,并写入内容
    hostname > /ftp/ftp1/hello1
    hostname > /ftpuserhome/ftpuser2/hello2
    hostname > /ftpuserhome/ftpuser3/hello3
    
    // 测试
    
    // 连接ftpuser1,是被guest_username=ftp,改过的名字
    lftp localhost -u ftp
    ls
    exit
    
    
  • 虚拟账号配置独立

    // 在vsftpd.coonf中添加
    vim /etc/vsftpd/vsftpd.conf
    
    // 添加不同用户的配置目录
    user_config_dir=/etc/vsftpd/conf.d
    :wq
    
    // 查看
    ll /etc/vsftpd/conf.d
    
    //conf.d目录,默认不存在,需要创建
    mkdir /etc/vsftpd/conf.d
    
    // 不同用户的配置文件和用户名保持一致
    vim /etc/vsftpd/conf.d/ftp1
    输入anon_max_rate=1024,让ftpuser1限速
    
    vim /etc/vsftpd/conf.d/ftpuser2
    write_enable=YES
    anon_upload_enable=YES
    
    // 在ftpuser2下面创建目录,存放用户上传
    mkdir ftp/ftp1/upload
    mkdir ftp/ftp1/img
    
    // 查看upload目录的权限
    ll -d ftp/ftp1/upload
    ll -d ftp/ftp1/img
    
    // 给写权限
    chown ftp /ftp/ftp1/upload
    chown ftp /ftp/ftp1/img
    
    // 重启
    systemctl restart vsftpd
    
    // 测试限速
    dd if=/dev/zero of=/ftp/ftp1/hello1 bs=1M count=100
    dd if=/dev/zero of=/ftp/ftp2/hello2 bs=1M count=100
    
    // 测试
    lftp localhost -u ftp1
    ls
    get hello1 发现被限速
    exit
    
    // 使用ftp2登录
    lftp localhost -u ftp2
    lftp localhost -u ftp
    ls
    get hello2 不限速
    
    // 测试上传
    cd upload/
    ls
    put /etc/passwd
    显示 xx bytes transferred即OK
    
    

node.js

  • 查看本机是否安装

    node -v
    
  • 下载

    wget http://learning.happymmall.com/fe%E5%89%8D%E7%AB%AF%E7%8E%AF%E5%A2%83/node-v4.4.7-linux-x64.tar.gz
    
  • 查看

    ls
    
  • 解压

    tar -xzvf node-v4.4.7-linux-x64.tar.gz
    
  • 进入node-v4.4.7-linux-x64解压的文件夹,进入bin目录启动

    cd bin
    ./node -v
    
  • 进入/usr/local

    cd/usr/local
    
    // 把nodejs移动过来
    sudo ~/node-v4.4.7-linux-x64 ./node-v4.4.7-linux-x64
    
    // 配置环境变量
      sudo vim /etc/profile
      
      // 直接在下面一行,添加一行代码
      // 按i进入编辑模式,
      // 按:wq保存退出
      export JAVA_HOME=/usr/java/jdk1.7.0_80
      export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
      export MAVEN_HOME=/developer/apache-maven-3.0.5
      export NODE_HOME=/usr/local/node-v4.4.7-linux-x64
      export RUBY_HOME=/usr/local/ruby
      export CATALINA_HOME=/developer/apache-tomcat-7.0.73
      
      export PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin:$MAVEN_HOME/bin:$NODE_HOME/bin:/usr/local/bin:$RUBY_HOME/bin
      
      
      export LC_ALL=en_US.UTF-8
      
    
    - 使配置生效
    
      source /etc/profile
     
    
    
    

ruby

node-sass

sudo ln -s /usr/local/node-v4.4.7-linux-x64/bin/cnpm
sudo n v12.13.1

php

  • 安装php依赖包

    yum install libmcrypt libmcrypt-devel mhash mhash-devel libxml2 libxml2-devel bzip2 bzip2-devel
    

防火墙

  • 进入防火墙配置文件

    cd /etc/sysconfig/
    ll
    ll | grep ipt
    // 只有iptables-config,没有iptables,需要初始化
    
    // 初始化
    sudo iptables -P OUTPUT ACCEPT
    
    // 保存
    sudo service iptables save
    
    // 查看
    ll | grep ipt
    
    // 备份
    sudo mv iptables iptables.bak
    ll | grep ipt
    
    // 下载
    sudo wget http://learning.happymmall.com/env/iptables
    
    // 查看
    ll | grep ipt
    
    // 编辑
    sudo vim iptables
    // 注释3306 5005 8080端口
    // 按:wq保存退出
    
    // 重启防火墙
    sudo service iptables restart
    

自动化发布脚本

  • 给hs用户赋予developer目录所有权限

    cd /
    sudo chown -R honor /developer/
    ll
    sudo chmod u+w -R /developer/
    sudo chmod u+r -R /developer/
    sudo chmod u+x -R /developer/
    
  • 进入deveoper目录

    cd /developer/
    ll
    
    // 下载脚本
    sudo wget http://learning.happymmall.com/deploy/deploy.sh
    
    // 在developer/下面创建一个git-repository文件夹,存放拉取的代码
    sudo mkdir git-repository
    cd git-repository/
    sudo git clone +服务端项目ssh地址
    ll
    
    // 编辑
    sudo vim deploy.sh
    //:set number设置行号
    // 修改git-repository后面的目录,与仓库名保持一致
    // git checkout v1.0分支与仓库分支保持一致
    // 删除旧的ROOT.war不成功,是因为第一次执行没有这个文件,属于正常情况
    // BUILD SUCCESS代表编译成功
    
    // 按:wq退出
    
    // 执行
    ./deploy.sh
    
    
  • 进入tomcat目录

    cd apache-tomcat-7.0.73/
    ll
    cd webapps/
    ll
    cd ROOT
    ll
    cat index.jsp
    
    // 查看tomcat日志
    cd apache-tomcat-7.0.73/
    tailf logs/catalina.out
    // Server startup in xxxs说明启动成功
    

首页404是正常的,index.jsp可以访问是正常的
Intellij IDEA中ftp 的用户名和密码,要与ftp设置的用户名和密码一致

ftp的 用户名是ftpuser 密码是123456


Intellij IDEA中连接数据库的用户名和密码,要与阿里云设置的mmall的用户名和密码一致

db的用户名是mmal 密码是mmallpassword

上传图片,连接FTP服务器异常

  • 启动vsftpd

    sudo service vsftpd start
    
  • 查看日志

    less logs/catalina.out
    

图片是指向/product/ftpfile/img/目录

sudo vim /usr/local/nginx/conf/vhost/img.happymmal.conf

在ftpfile下面创建img目录

sudo mkdir img

把img文件夹的用户和用户组全部改成ftpuser

sudo chown ftpuser img/
sudo chgrp ftpuser img/
ll

给用户组赋予写权限

sudo chmod g+w img/
ll
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值