安装服务器

一、安装系统

  1. 安装系统及基本软件

在云主机-->更多-->重装系统-->选择企业服务

安装服务器_第1张图片

2、设置安全组,开放远程终端端口、FTP端口21(出入)

3、关闭FTP,并关闭开机自启动

       systemctl stop vsftpd.service

       systemctl disable vsftpd.service

二、安装EPEL库,用于支持第三方软件包的安装

  1. 安装:yum -y install epel-release
  2. 查看:rpm -q epel-release

      (卸载:rpm -e epel-release)

三、在本地windows上安装SecureCRT并进行登录、文件传输操作

  1. 下载并安装SecureCRT
  2. 使用secureCRT登录服务器
  3. 使用secrureCRT上传/下载文件

          (1)给服务器安装lrzsz工具

               yum -y install lrzsz

               rz中的r意为received(接收),输入rz时、意为服务器接收文件,既将文件从本地上传到服务器。

               sz中的s意为send(发送),输入sz时、意为服务器要发送文件,既从服务器发送文件到本地,或是说本地从服务器上                 下载文件。

                注:不论是send还是received,动作都是在服务器上发起的。

           (2)使用rz命令上传文件:

               将文件存储的目录设置为当前目录

                执行rz,选择需要上传的文件

             (3)停止、重启FTP

                 停止vsftpd: service vsftpd stop

                重启vsftpd: service vsftpd restart

secrureCRT支持的文件类型:

ASCII:这是最快的传输协议,但只能传送文本文件。

Xmodem:这种古老的传输协议速度较慢,但由于使用了CRC错误侦测方法,传输的准确率可高达99.6%。

Ymodem:这是Xmodem的改良版,使用了1024位区段传送,速度比Xmodem要快

Zmodem:Zmodem采用了串流式(streaming)传输方式,传输速度较快,而且还具有自动改变区段大小和断点续传、快速错误侦测等功能。这是目前最流行的文件传输协议

四、加入PHP搜索路径

1)#vim /etc/profile   ;在PATH=中加入/usr/local/php7.1/bin:

2)#source /etc/profile  ;重新载入环境变量

3)#php -v       ;显示版本号测试

五、修改mysql root密码,删除不需要的用户,创建新用户并授权,修改端口

1)修改root密码

方式1:利用phpmyadmin

http://***/phpmyadmin

安装服务器_第2张图片

方式2:利用mysql命令

1#mysql -uroot -p

输入原密码后,执行:

2set password for root@localhost = password('****');

3exit退出mysql

2)修改端口

1#vim /etc/my.cnf

在其中将端口号改为需要的端口号

(2)重启mysql

#systemctl restart mysql

六、建立Svn服务器与网站仓库

1)#yum install subversion

2)#svnserve  --version ; 查看版本验证成功

3)#mkdir -p  /var/svn/repos        ;创建库总目录,其下可以放多个库

4)# svnadmin create /var/svn/repos/fm_www    ;创建版本库

5)创建用户帐号

#cd /var/svn/repos

#cp fm_www/conf/passwd  passwd  ; 将文件复制到总目录下,供多个版本库共用

#vim passwd    ;输入如下内容

[users]

chen=c@80

chch = c@80

cyf=c@3

6)设置权限

#cp fm_www/conf/authz        authz  ; 将文件复制到总目录下,供多个版本库共用

# vi authz          ;输入以下内容

[groups]

admins = chen   ;管理员组

rds = chen,chch,cyf    ; 开发人员组

* =      #禁止其他用户访问

 

[fm_www:/]   #版本库根目录

@admins = rw   ; @表示组

* =  

[fm_www:/data]

@admins = rw          ;管理员可以读写,配置与动态数据所在目录

@rds =        ;开发人员无权访问

* =      #禁止其他用户访问

 

7)svn服务器配置

#vim fm_www/conf/svnserve.conf ;此文件由各库独有,输入以下内容

anon-access = none                   #匿名用户禁用

auth-access = write        #授权用户可写

password-db = ../../passwd   #使用哪个文件作为账号文件,指向共享帐号文件

authz-db = ../../authz              #使用哪个文件作为权限文件,指向共享权限文件

realm = fm_www     # 认证空间名,版本库所在目录

8)启动svn server

方法1

#svnserve      -d -r /var/svn/repos ;启动svn server 要用参数-d -r /var/svn/repos

方法2:设为自启动

1)修改svn配置文件,设置正确的仓库目录参数:

#vim /etc/sysconfig/svnserve         ; OPTIONS选项修改为库目录所在

OPTIONS="-r /var/svn/repos"

2)使能自启动

#systemctl enable svnserve  ;允许自启动

#systemctl list-unit-files |grep svnserve  ;验让svnserve enabled

 

3)启动

#systemctl start svnserve

 

 

七、建立网站开发环境

1、安装Thinkcmf

1)下载.zip并解压到本地任意目录

2)利用svn客户端将Thinkcmd导入版本库

安装服务器_第3张图片

安装服务器_第4张图片

3)建立网站目录

#mkdir -p /var/yw_www

4)从版本库中导出Thinkcmf文件

#cd /var

#svn co svn://*.*.*.*/ym_www     ym_www   ; 前一个fm_www为realm 名,后一个导出的目标路径

5)让网站upload、runtime目录具有写权限

(解决mkdir() Permission denied错误)

#ps aux|grep nginx ;查看当前的nginx进程,能够找到nginx用户是哪个(可能是www,user或者其他的,看work process用户)

然后将data/runtime目录改为www所有

#chown -R www runtime

#chmod a+w -R public/upload

另外,data/conf/rout.conf也要修改所有者:

#chown -R www  route.php

2、建立钩子

1)建立钩子脚本

# cd /var/svn/repos/ym_www/hooks

#vim post-commit             ;输入如下内容:

#!/bin/sh

export LANG=en_US.utf8

REPOS="$1"  #库所在目录

REV="$2"     # 版本号

LOG=/run/log/svn.fm_www.log   #日记文件,要求在/run/中创建log目录

SVN=/usr/bin/svn  //

SVNLOOK=/usr/bin/svnlook

WEB_PATH=/var/ym_www  #目标路径

AUTHOR=$(svnlook author -r $REV $REPOS)   #提交代码的用户

echo "Commited by $AUTHOR at `date "+%Y-%m-%d %H:%M"`........................................" >> $LOG

$SVN update $WEB_PATH --username chen --password chen@88656690 --no-auth-cache >>$LOG

#chmod -R 755 post-commit  ;给post-commit增加可搪行权限

2)将post-commit加入可执行权限

#chmod 777 post-commit

2、配置nginx 指定网站根目录

#find / -name nginx.conf  ;查找nginx配置文件所在路径

#cd /usr/local/nginx/conf        

#vim nginx.conf                

将server{}块内容修改如下,注,有的配置文件把以下部分单独放到一个文件中,并在nginx.conf中包含该文件,如 include vhost/www.conf。

另外,thinkcmf中也有相关配置:

server{

    listen 80;

    server_name  129.211.126.128; #可以改为域名

    root /var/mywww/fm_www/public; # 该项要修改为你准备存放相关网页的路径

    location / {

        index  index.php index.html index.htm;

         #如果请求既不是一个文件,也不是一个目录,则执行一下重写规则

         if (!-e $request_filename)

         {

            #地址作为将参数rewrite到index.php上。

            rewrite ^/(.*)$ /index.php?s=$1;

            #若是子目录则使用下面这句,将subdir改成目录名称即可。

            #rewrite ^/subdir/(.*)$ /subdir/index.php?s=$1;

         }

    }

 

        location /api/ {

        index  index.php index.html index.htm;

         #如果请求既不是一个文件,也不是一个目录,则执行一下重写规则

         if (!-e $request_filename)

         {

            #地址作为将参数rewrite到index.php上。

            #rewrite ^/(.*)$ /index.php?s=$1;

            #若是子目录则使用下面这句,将subdir改成目录名称即可。

            rewrite ^/api/(.*)$ /api/index.php?s=$1;

         }

    }

 

        location ~* ^\/upload\/.+\.(html|php)$ {

                return 404;

        }

 

        location ~* ^\/plugins\/.+\.(html|php)$ {

                return 404;

        }

 

        location ~* ^\/themes\/.+\.(html|php)$ {

                return 404;

        }

 

    #proxy the php scripts to php-fpm

    location ~ \.php {

            include fastcgi_params;

            ##pathinfo支持start

            #定义变量 $path_info ,用于存放pathinfo信息

            set $path_info "";

            #定义变量 $real_script_name,用于存放真实地址

            set $real_script_name $fastcgi_script_name;

            if ($fastcgi_script_name !~ ".php"){

            set $real_script_name "/index.php";

            }

            #如果地址与引号内的正则表达式匹配

            if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {

                    #将文件地址赋值给变量 $real_script_name

                    set $real_script_name $1;

                    #将文件地址后的参数赋值给变量 $path_info

                    set $path_info $2;

            }

            #配置fastcgi的一些参数

            fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;

            fastcgi_param SCRIPT_NAME $real_script_name;

            fastcgi_param PATH_INFO $path_info;

            ###pathinfo支持end

        fastcgi_intercept_errors on;

 

        fastcgi_pass   127.0.0.1:9000;

        # fastcgi_pass 如果是 sock形式,可能是下面的配置

        # fastcgi_pass unix:/tmp/php-cgi.sock

    }

 

}

 

 

#systemctl restart nginx                  ;重启nginx服务

3、安装Thinkcmf

1)按引导安装Thinkcmf

从浏览器输入网址,进入网站,进行Thinkcmf安装。

如果发现有些目录权限不够,则增加相应权限,如upload目录加入写的权限:

#chmod a+w -R upload

2)删除临时文件

将ym_www/data目录下的临时文件全部删除,包括 runtime目录下的文件

4、将安装后的系统commit到版本库

#cd /var/yw_www

#svn add * --force

#svn ci -m *

5、将版本库checkout到本地用作开发

6、修改数据库配置

        用phpstorm打开yw_www

        修改data/config/database.php中的用户名,密码与端口号

八、建立gatewayworker开发环境

1、建立svn仓库

     #cd /var/svn/repos

     # svnadmin create /var/svn/repos/yw_gateway    ;创建版本库

2、修改配置文件,加入用户权限

3、下载gateway并解压

4、导入gateway到版本库

 

你可能感兴趣的:(服务器)