全網(wǎng)備份-創(chuàng)新互聯(lián)

1.1全網(wǎng)備份項(xiàng)目介紹說(shuō)明:

將全網(wǎng)架構(gòu)中所有服務(wù)器上重要的數(shù)據(jù)進(jìn)行匯總備份保存

創(chuàng)新互聯(lián)專注于鉛山企業(yè)網(wǎng)站建設(shè),自適應(yīng)網(wǎng)站建設(shè),電子商務(wù)商城網(wǎng)站建設(shè)。鉛山網(wǎng)站建設(shè)公司,為鉛山等地區(qū)提供建站服務(wù)。全流程按需設(shè)計(jì)網(wǎng)站,專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)

自動(dòng)化:數(shù)據(jù)信息的自動(dòng)備份

規(guī)范化:避免備份數(shù)據(jù)出錯(cuò)

全網(wǎng)備份

1.2  全網(wǎng)備份項(xiàng)目實(shí)施過(guò)程

    ①. 規(guī)劃定義好備份服務(wù)器

          a 部署rsync備份服務(wù)(采用rsync守護(hù)進(jìn)程方式)

              b 編寫(xiě)腳本文件管理備份數(shù)據(jù)信息

              c 編寫(xiě)定時(shí)任務(wù)執(zhí)行腳本管理數(shù)據(jù)(難點(diǎn))

       ②. 確認(rèn)驗(yàn)證好架構(gòu)服務(wù)器

          a 驗(yàn)證rsync備份服務(wù)

              b 編寫(xiě)腳本文件統(tǒng)一備份數(shù)據(jù)信息(難點(diǎn))

              c 編寫(xiě)定時(shí)任務(wù)執(zhí)行腳本備份數(shù)據(jù)

1.3 全網(wǎng)備份項(xiàng)目rsync守護(hù)進(jìn)程模式部署

1.3.1 rysnc服務(wù)端部署操作

  1. 驗(yàn)證軟件是否存在

[root@backup~]# rpm -qa rsync

rsync-3.0.6-12.el6.x86_64

  1. 檢查配置文件

  2.  ##rsyncd.conf start##                配置文件描述信息

  3.  uid = rsync                          #用戶 遠(yuǎn)端的命令使用rsync訪問(wèn)共享目錄

  4.  gid = rsync                          #用戶組

  5.  use chroot = no                      #安全相關(guān)

  6.  max connections = 200                #大的連接數(shù)

  7.  timeout = 300                        #超時(shí)時(shí)間

  8.  pid file = /var/run/rsyncd.pid       #存放服務(wù)運(yùn)行的時(shí)候 進(jìn)程的ID號(hào)(PID)

  9. lock file = /var/run/rsync.lock      #進(jìn)程的鎖文件

  10. log file = /var/log/rsyncd.log       #運(yùn)行程序日志文件,顯示出錯(cuò)信息等

  11.  [backup]                            #模塊名稱

  12. path = /backup                       #模塊對(duì)應(yīng)的位置(路徑)

  13. ignore errors                        #忽略錯(cuò)誤程序

  14. read only = false                    #是否只讀

  15. list = false                         #是否可以列表

  16. hosts allow = 172.16.1.0/24          #允許訪問(wèn)rsync服務(wù)器的客戶范圍(白名單)

  17. hosts deny = 0.0.0.0/32              #禁止訪問(wèn)rsync服務(wù)器的客戶范圍(黑名單)

  18. auth users = rsync_backup            #不存在的用戶,只用于開(kāi)門(mén)(認(rèn)證)

  19. secrets file = /etc/rsync.passwor    #不存在的用戶進(jìn)行認(rèn)證時(shí)的密鑰文件

  20. comment = "backup dir by oldboy"     #

  21.    創(chuàng)建虛擬用戶管理rsync程序

[root@backup~]# # 創(chuàng)建用戶

[root@backup~]# useradd -s /sbin/nologin -M rsync

創(chuàng)建完成后查看

[root@backup~]# id rsync

uid=500(rsync)gid=500(rsync) groups=500(rsync)

4. 檢查rsync服務(wù)認(rèn)證用戶密碼文件是否存在

[root@backup~]# cat /etc/rsync.password

rsync_backup:123456

記得檢查密碼文件權(quán)限是不是600

[root@backup~]# chmod 600 /etc/rsync.password

[root@backup~]# ll /etc/rsync.password

-rw------- 1root root 20 May 4 12:04/etc/rsync.password

5. 創(chuàng)建共享存儲(chǔ)目錄

[root@backup~]# # 創(chuàng)建目錄

[root@backup~]# mkdir /backup -p

[root@backup~]# ll -d /backup/

drwxr-xr-x 2root root 4096 May 4 12:00 /backup/

[root@backup~]# # 修改備份目錄權(quán)限

[root@backup~]# chown -R rsync.rsync /backup/

[root@backup~]# ll -d /backup/

drwxr-xr-x 2rsync rsync 4096 May 4 12:00 /backup/

6.   啟動(dòng)rsync 服務(wù)器

[root@backup~]# ps -ef |grep rsync

root      5138     1 0 01:31 ?       00:00:00 rsync --daemon

root      6503  6391 0 09:04 pts/1   00:00:00 grep --color=auto rsync

[root@backup~]# netstat -luntp |grep 873

tcp       0     0 0.0.0.0:873                0.0.0.0:*                  LISTEN     5138/rsync

tcp       0     0 :::873                     :::*                       LISTEN     5138/rsync

沒(méi)有的話 打開(kāi)

rsync --daemon

7.   將rsync啟動(dòng)命令放入到開(kāi)機(jī)自啟動(dòng)文件中

[root@backup~]# echo "rsync --daemon" >> /etc/rc.local

[root@backup~]# tail -1 /etc/rc.local

rsync--daemon

1.3.2 rsync客戶端驗(yàn)證操作

 第一個(gè)里程碑要做

1. 創(chuàng)建用戶認(rèn)證密碼文件,實(shí)現(xiàn)數(shù)據(jù)備份傳輸免密鑰

[root@nfs01~]# cat /etc/rsync.password

123456

查看目錄權(quán)限 修改成600

[root@nfs01~]# ll /etc/rsync.password

-rw-------1 root root 7 May 5 10:02/etc/rsync.password

2. 測(cè)試rsync服務(wù)數(shù)據(jù)備份傳輸

1.4 全網(wǎng)備份項(xiàng)目腳本編寫(xiě)

1.4.1 rsync客戶端腳本編寫(xiě)需求

1. 本地創(chuàng)建backup備份目錄                  mkdir -p /backup

             2. 將備份數(shù)據(jù)統(tǒng)一壓縮進(jìn)行保存 有軟鏈接文件 tar -zchf

             3. 推送備份目錄數(shù)據(jù)到rsync備份服務(wù)器上      --password-file=

             4. 刪除本地保存的7天前的數(shù)據(jù)信息

         find /backup/$Host_IP -type f -mtime+7 -name "*.tar.gz" |xargs rm -f

             5. 對(duì)備份數(shù)據(jù)數(shù)據(jù)進(jìn)行驗(yàn)證,加上指紋信息     md5sum 生成數(shù)據(jù)文件指紋信息

vim/server/scripts/backup_nginx.sh

#!/bin/bash

#oldboy at2017 5 backup data

Host_IP=$(hostname-I|awk '{print $2}')

Date_info=$(date+%F_week0%w)

# createbackup data dir

mkdir -p/backup

mkdir/var/html/www -p

mkdir/app/logs/ -p

# tar datainfo

cd /&&\

mkdir /backup/$Host_IP-p

tar zchf/backup/$Host_IP/sysbak_date_${Date_info}.tar.gz ./var/spool/cron/root ./etc/rc.local./server/scripts ./etc/sysconfig/iptables

tar zchf/backup/$Host_IP/www_date_${Date_info}.tar.gz ./var/html/www

tar zchf/backup/$Host_IP/logs_date_${Date_info}.tar.gz ./app/logs

# rsync pushfiger info

find/backup/$Host_IP/ -type f -name "*${Date_info}.tar.gz" |xargs md5sum>/backup/$Host_IP/finger_${Date_info}.txt

# rsync pushdata to rsync_server

rsync -az/backup/ rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password

# cleardata info for 7 day ago

find/backup/$Host_IP -type f -mtime +7 -name "*.tar.gz" |xargs rm -f

find/backup/$Host_IP -type f -mtime +7 -name "finger*" |xargs rm -f

1.4.2 rsync服務(wù)端腳本編寫(xiě)需求

         a. 驗(yàn)證數(shù)據(jù)完整性                            md5sum -c 客戶端傳輸過(guò)來(lái)的指紋文件

b. 將完整性驗(yàn)證結(jié)果,通過(guò)郵件發(fā)送給監(jiān)管人員 郵箱的配置 與 發(fā)送郵件的方式(兩種方式發(fā)送郵件)

           01:發(fā)送郵件方式,利用文件方式表示郵件內(nèi)容

           mail -s "check data" 18735676310@163.com </tmp/mail.txt

           02:發(fā)送郵件,利用命令行方式表示郵件內(nèi)容

           # echo "系統(tǒng)有異常問(wèn)題,請(qǐng)檢查系統(tǒng)"|mail -s "異常告警" 18735676310@163.com

           說(shuō)明:echo后面接上要發(fā)送的郵件信息,mail -s后面接上郵件標(biāo)題,最后表示要將郵件發(fā)送給誰(shuí)

             c. 將180天的數(shù)據(jù)進(jìn)行刪除,保留每周一的數(shù)據(jù)

          find /backup/ -type f -mtime +180 !-name "*week01.tar.gz"|xargs rm -f

vim /server/scritps/backup_rsync.sh

[root@backuptmp]# cat /server/scripts/backup_server.sh

#!/bin/bash

Date_info=$(date+%F_week0%w)

# check datainfo

find /backup/-type f -name "finger_${Date_info}.txt" |xargs md5sum -c>/tmp/figer_cheak.txt

# send cheakinfo mail

mail -s"cheak date" 18735676310@163.com </tmp/figer_cheak.txt

# delete180day ago date ; save week01

find /backup/-type f -mtime +180 ! -name "*week01.tar.gz" |xargs rm -f

 

1.5 全網(wǎng)備份項(xiàng)目定時(shí)任務(wù)編寫(xiě)

①    rsync客戶端編寫(xiě)定時(shí)任務(wù)

nginx客戶端的定時(shí)任務(wù)

#crond-id-002:push backup torsync

00 00 * * * /bin/bash/server/scripts/backup_nginx.sh >/dev/null 2>&1

nfs客戶端的定時(shí)任務(wù)

#crond-id-002:push backup torsync

00 00 * * * /bin/bash/server/scripts/backup_nfs.sh >/dev/null 2>&1

②    .rsync服務(wù)端編寫(xiě)定時(shí)任務(wù)

rsync服務(wù)端的定時(shí)任務(wù)

#crotab-id002:backup NFS nginx

00 06 * * * /bin/bash/server/scripts/backup_rsync.sh >/dev/null 2>&1

   上面兩個(gè)客戶端的定時(shí)任務(wù)寫(xiě)的是每天晚上12點(diǎn)整進(jìn)行打包發(fā)送,而rsync服務(wù)器的定時(shí)任務(wù)是每天早上6點(diǎn)進(jìn)行發(fā)送。

1.6 全網(wǎng)備份項(xiàng)目難點(diǎn)分析

①    . 每周一的數(shù)據(jù)進(jìn)行保存,確認(rèn)清楚什么是周一的數(shù)據(jù)

/backup/$(hostname-I|awk '{print $2}')/sysbak_date_$(date+%F_week0%w).tar.gz./var/spool/cron/root

所以在打包壓縮文件的時(shí)候就考慮到了這一點(diǎn)$(date+%F_week0%w)這個(gè)在文件名字上面加上了周幾,所以在保存數(shù)據(jù)的時(shí)候能起到關(guān)鍵性作用。

      find /backup/ -type f -mtime +180 ! -name"*week01.tar.gz" |xargs rm -f

②    . 驗(yàn)證數(shù)據(jù)完整性是什么概念

       因?yàn)閿?shù)據(jù)是從客戶端傳過(guò)來(lái)的,為了保證數(shù)據(jù)沒(méi)有修改和丟失,在發(fā)送數(shù)據(jù)時(shí),給數(shù)據(jù)進(jìn)行加密處理,然后服務(wù)端收到數(shù)據(jù)和加密處理文件時(shí),會(huì)進(jìn)行比對(duì)。如果串碼一樣,說(shuō)明沒(méi)有丟失和修改。

If you do not leave me . I will by your side untillthe life end

四級(jí)水平:你如果不離開(kāi)我,我就和你同歸于盡,

六級(jí)水平:你若不離不棄,我必生死相依。

八級(jí)水平:?jiǎn)柺篱g情為何物?直教人生死相許。

十級(jí)水平:天地合,乃敢與君絕。

佛祖水平:你在或不在,愛(ài)就在那里,不增不減。

1.7 全網(wǎng)備份項(xiàng)目部署

1.7.1     第一個(gè)里程碑:實(shí)現(xiàn)數(shù)據(jù)傳輸備份

rsync守護(hù)進(jìn)程模式配置步驟

檢查服務(wù)端

  1. 1.檢查軟件是否存在

[root@backup~]# rpm -qa rsync

rsync-3.0.6-12.el6.x86_64

  1. 2.檢查配置文件

[root@backup~]# cat /etc/rsyncd.conf

##rsyncd.conftart##

uid =rsync

gid =rsync

usechroot = no

maxconnections = 200

timeout= 300

pidfile = /var/run/rsyncd.pid

lockfile = /var/run/rsync.lock

logfile = /var/log/rsyncd.log

[backup]

path= /backup

ignoreerrors

readonly = false

list= false

hostsallow = 172.16.1.0/24

hostsdeny = 0.0.0.0/32

authusers = rsync_backup,oldboy

secretsfile = /etc/rsync.password

[data]

path= /data

ignoreerrors

readonly = false

list= false

hostsallow = 172.16.1.0/24

hostsdeny = 0.0.0.0/32

authusers = rsync_backup,oldboy

secretsfile = /etc/rsync.password

  1. 3.創(chuàng)建虛擬用戶管理rsync程序

[root@backup~]# # 創(chuàng)建用戶

[root@backup~]# useradd -s /sbin/nologin -M rsync

  1. 4.檢查rsync服務(wù)認(rèn)證用戶密碼文件是否存在

[root@backup~]# cat /etc/rsync.password

rsync_backup:123456

記得檢查密碼文件權(quán)限是不是600

  1. 5.創(chuàng)建共享存儲(chǔ)目錄

mkdir  /backup/ -p

修改目錄的屬組和屬主

[root@backup~]# ll -d /backup/

drwxr-xr-x5 rsync rsync 4096 May 5 15:35 /backup/

  1. 6.啟動(dòng)rsync服務(wù)器

[root@backup~]# ps -ef |grep rsync

root      5138     1 0 01:31 ?       00:00:00 rsync --daemon

root      6503  6391 0 09:04 pts/1   00:00:00 grep --color=auto rsync

[root@backup~]# netstat -luntp |grep 873

tcp       0     0 0.0.0.0:873                0.0.0.0:*                  LISTEN     5138/rsync

tcp       0     0 :::873                     :::*                       LISTEN     5138/rsync

沒(méi)有的話 打開(kāi)

rsync --daemon

  1. 7.將rsync啟動(dòng)命令放入到開(kāi)機(jī)自啟動(dòng)文件中

[root@backup~]# echo "rsync --daemon" >> /etc/rc.local

[root@backup~]# tail -1 /etc/rc.local

rsync--daemon

客戶端
1. 創(chuàng)建用戶認(rèn)證密碼文件,實(shí)現(xiàn)數(shù)據(jù)備份傳輸免密鑰

[root@nfs01~]# cat /etc/rsync.password

123456

查看目錄權(quán)限 修改成600

[root@nfs01~]# ll /etc/rsync.password

-rw-------1 root root 7 May 5 10:02 /etc/rsync.password

2. 測(cè)試rsync服務(wù)數(shù)據(jù)備份傳輸

      第二個(gè)里程碑:編寫(xiě)數(shù)據(jù)備份腳本

                 nginx nfs

--rsync客戶端編寫(xiě)的備份腳本

客戶端nginx編寫(xiě)的腳本

vim/server/scripts/backup_nginx.sh    要規(guī)范腳本的名稱和存放腳本的目錄

#!/bin/bash                            命令解釋器

#oldboy at2017 5 backup data          必要的注釋

Host_IP=$(hostname-I|awk '{print $2}') 設(shè)置的別名

Date_info=$(date+%F_week0%w)          設(shè)置的別名

# createbackup data dir               要?jiǎng)?chuàng)建的目錄

mkdir -p/backup

mkdir/var/html/www -p

mkdir/app/logs/ -p

# tar datainfo                         打包目的的注釋

cd /&&\                                一定要在根目錄下面進(jìn)行打包,

mkdir/backup/$Host_IP -p

tar zchf/backup/$Host_IP/sysbak_date_${Date_info}.tar.gz ./var/spool/cron/root ./etc/rc.local./server/scripts ./etc/sysconfig/iptables        記得要加h參數(shù),可以打包軟鏈接

tar zchf /backup/$Host_IP/www_date_${Date_info}.tar.gz ./var/html/www

tar zchf/backup/$Host_IP/logs_date_${Date_info}.tar.gz ./app/logs

# rsync pushfiger info

find/backup/$Host_IP/ -type f -name "*${Date_info}.tar.gz" |xargs md5sum>/backup/$Host_IP/finger_${Date_info}.txt 把找到的文件進(jìn)行加密

# rsync pushdata to rsync_server

rsync -az/backup/ rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password

                                             免密鑰進(jìn)行打包傳輸數(shù)據(jù)

# cleardata info for 7 day ago             刪除七天前的文件

find/backup/$Host_IP -type f -mtime +7 -name "*.tar.gz" |xargs rm -f

find/backup/$Host_IP -type f -mtime +7 -name "finger*" |xargs rm -f

--nfs客戶端編寫(xiě)的備份腳本

vim/server/scripts/backup_nfs.sh                 要規(guī)范腳本的名稱和存放腳本的目錄

#!/bin/bash                                       命令解釋器

#oldboy at2017 5 backup data                     必要的注釋

Host_IP=$(hostname-I|awk '{print $2}')

Date_info=$(date+%F_week0%w)

# createbackup data dir

mkdir -p/backup

# tar datainfo

cd /&&\                   一定要在根目錄下面進(jìn)行打包

mkdir/backup/$Host_IP -p

tar zchf

/backup/$Host_IP/sysbak_date_${Date_info}.tar.gz ./var/spool/cron/root ./etc/rc.local./server/scripts ./etc/sysconfig/iptables  記得要加h參數(shù),可以打包軟鏈接

# rsync pushfiger info

find/backup/$Host_IP/ -type f -name "*${Date_info}.tar.gz" |xargs md5sum>/backup/$Host_IP/finger_${Date_info}.txt

把找到的文件進(jìn)行加密

# rsync pushdata to rsync_server

rsync -az/backup/ rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password

免密鑰進(jìn)行打包傳輸數(shù)據(jù)

# cleardata info for 7 day ago

find/backup/$Host_IP -type f -mtime +7 -name "*.tar.gz" |xargs rm -f

find/backup/$Host_IP -type f -mtime +7 -name "finger*" |xargs rm -f

備份服務(wù)器端 --rsync服務(wù)端編寫(xiě)備份腳本

--rsync服務(wù)端編寫(xiě)備份腳本

vim/server/scripts/backup_rsync.sh要規(guī)范腳本的名稱和存放腳本的目錄

#!/bin/bash                       命令解釋器

Date_info=$(date+%F_week0%w)

# check datainfo           查找傳過(guò)來(lái)的密碼就行比對(duì),將結(jié)果追加到figer_cheak.txt文件中

find /backup/-type f -name "finger_${Date_info}.txt" |xargs md5sum -c>/tmp/figer_cheak.txt

# send cheakinfo mail    把文件的內(nèi)容發(fā)送到郵箱

mail -s"cheak date" 18735676310@163.com </tmp/figer_cheak.txt

# delete180day ago date ; save week01  刪除180天的文件除了每星期一的文件

find /backup/-type f -mtime +180 ! -name "*week01.tar.gz" |xargs rm -f

      第三個(gè)里程碑:配置定時(shí)任務(wù)

①rsync客戶端編寫(xiě)定時(shí)任務(wù)

nginx客戶端的定時(shí)任務(wù)

#crond-id-002:push backup torsync

00 00 * * * /bin/bash/server/scripts/backup_nginx.sh >/dev/null 2>&1

nfs客戶端的定時(shí)任務(wù)

#crond-id-002:push backup torsync

00 00 * * * /bin/bash/server/scripts/backup_nfs.sh >/dev/null 2>&1

②. rsync服務(wù)端編寫(xiě)定時(shí)任務(wù)

rsync服務(wù)端的定時(shí)任務(wù)

#crotab-id002:backup NFS nginx

00 06 * * * /bin/bash/server/scripts/backup_rsync.sh >/dev/null 2>&1

   上面兩個(gè)客戶端的定時(shí)任務(wù)寫(xiě)的是每天晚上12點(diǎn)整進(jìn)行打包發(fā)送,而rsync服務(wù)器的定時(shí)任務(wù)是每天早上6點(diǎn)進(jìn)行發(fā)送。因?yàn)槿绻?wù)端也是晚上12點(diǎn)整進(jìn)行備份,怕客戶端的還沒(méi)有發(fā)送過(guò)來(lái)就沒(méi)有文件,所有往后推一點(diǎn)時(shí)間最好。

1.8 全網(wǎng)備份用到的知識(shí)點(diǎn)

1.8.1 md5sum

對(duì)傳輸?shù)奈募M(jìn)行加密

[root@nfs01~]# md5sum /etc/hosts

c559a5da81a3ecc708ae5d84985a0776 /etc/hosts

指紋加密特點(diǎn):雪崩效應(yīng)

1.8.2 發(fā)送郵件修改的配置文件 vim /etc/mail.rc

進(jìn)入到郵件發(fā)送的配置文件中,編輯發(fā)送郵件的參數(shù)信息

vim/etc/mail.rc

setfrom=18735676310@163.com smtp=smtp.163.com

setsmtp-auth-user=18735676310@163.com smtp-auth-password=Zr950220 smtp-auth=login

setfrom=郵箱地址@163.com smtp=smtp.163.com <-郵件發(fā)送郵件服務(wù)器域名,此處為163郵箱的發(fā)送服務(wù)器域名

setsmtp-auth-user=郵箱賬號(hào) smtp-auth-password=登錄郵箱密碼 smtp-auth=login

說(shuō)明:設(shè)置發(fā)送郵件是從哪個(gè)公共郵箱地址發(fā)送,采用的發(fā)送郵件服務(wù)器域名,公共郵箱賬號(hào)和密碼

1.8.3 發(fā)送郵件的方式(兩種方式發(fā)送郵件)

           01:發(fā)送郵件方式,利用文件方式表示郵件內(nèi)容

           mail -s "check data"2722982316@qq.com </tmp/mail.txt

           02:發(fā)送郵件,利用命令行方式表示郵件內(nèi)容

           # echo "系統(tǒng)有異常問(wèn)題,請(qǐng)檢查系統(tǒng)"|mail -s "異常告警" 17778058507@163.com

           說(shuō)明:echo后面接上要發(fā)送的郵件信息,mail -s后面接上郵件標(biāo)題,最后表示要將郵件發(fā)送給誰(shuí)

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

文章名稱:全網(wǎng)備份-創(chuàng)新互聯(lián)
當(dāng)前鏈接:http://muchs.cn/article16/dheedg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開(kāi)發(fā)、網(wǎng)頁(yè)設(shè)計(jì)公司、手機(jī)網(wǎng)站建設(shè)、電子商務(wù)、網(wǎng)站維護(hù)、動(dòng)態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)