建站步骤流程

  • 安装前 检查以下是否已经安装,是否符合自己使用的版本(将xxx换成具体名称)
    rpm -qa |grep xxx
    
  • 卸载包
    rpm -qa|grep xxx
    
  • 清理
    yum remove xxx
    

一、centos7系统安装

这里不做过多了解,一般购买服务器都会提供系统版本安装的

  • 安装gcc、gcc-c++ 等,因为以下安装需要先安装一些依赖包
    # 网友提供以来安装
    yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
    # 实际安装时缺少的依赖
    yum install gcc gcc-c++
    yum install make 
    yum install wget
    yum -y install zlib*
    yum install net-tools
    yum install sqlite-devel
    yum install openssl
    yum install openssl-devel
    yum install curl 
    
  • 使用 passwd root 修改登录密码

二、安装Apache

yum -y install httpd

三、安装php

yum -y install php

安装php-fpm

yum -y install php-fpm

四、安装Mysql

 yum -y install mysql
  • 查看日志情况
    登录mysql 执行:show variables like ‘log_%’;

五、安装扩展

yum -y install mysql-server
yum -y install php-mysql
yum -y install httpd-manual mod_ssl mod_perl mod_auth_mysql
yum -y install php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc php-devel
yum -y install mysql-connector-odbc mysql-devel libdbi-dbd-mysql
yum install php-pdo
# 有些系统 需要安装mysqli
yum install php-mysqli

六、配置与启动

  • 启动Apache
    service httpd start
    
  • 启动Mysql
    service mysqld start
    
  • 配置Mysql
    // 进入mysql
    mysql
    // 选择db
    use mysql
    // 修改 root 密码
    update user set authentication_string=password('密码') where user='root'
    // exit 退出后重新登录  
    // 回车后 输入密码
    mysql -u root -p
    // 查看用户表
    SELECT `Host`,`User` FROM user;
    // 更新用户表 可以远程登录
    UPDATE user SET `Host` = '%' WHERE `User` = 'root' LIMIT 1;
    // 刷新修改
    flush privileges;
    // exit 退出后重启mysql服务
    service mysqld restart
    
    // 相关 命令
    show databases; 查看数据库实例
    use dataName;  进入数据库实例
    show tables; 查看数据库表
    desc tableName; 查看数据库表结构
    show create table tableName; 查看建表sql语句
    
  • 索引
    //添加 唯一索引
    alter table table_name add unique (column_list) ;
    
    //删除表m_content中index_name类型索引
    DROP INDEX index_name  ON m_content
    //添加表m_content中index_name类型索引
    ALTER TABLE `m_content` ADD INDEX index_name ( `chapter_id`, `imgurl` )
    //查看表m_content中所有 索引
    SHOW INDEX FROM m_content
    
  • Apache配置
    自行检查 各服务安装情况:echo phpinfo();
    apache配置文件在:/etc/httpd/conf
    apache工作目录在:/var/www/html,工作目录更换后需要配置权限
    关闭权限控制器 使用setenforce 0
    关闭关闭防火强 service iptables stop
    以上重启无效

    开启.htaccess及.htaccess的使用方法
    将 AllowOverride None 改为 AllowOverride All

mysql 5.5.3以上支持utf8mb4, utf8mb4兼容四字节的unicode和utf8
这里php使用的是 pdo访问数据库
如果不是符合自己使用的版本,百度手动安装

七、安装python3

  • 以python3.6为例
    // 下载
    wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tgz
    // 解压
    tar -zxvf Python-3.6.0.tgz
    // 进入
    cd Python-3.6.0
    // 编译安装到  /usr/local/python3
    ./configure --prefix=/usr/local/python3
    // 安装
    make && make install
    
    // 建立python3的软链
    ln -s /usr/local/python3/bin/python3 /usr/bin/python3
    ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
    
    // 检查Python3及pip3是否正常可用:返回版本表示正常
    python3 -V
    pip3 -V
    
    执行文件在这个目录下 /usr/local/python3/bin
    有的网友说要添加到环境变量,我没有添加

八、安装scrapyd

官方文档

pip3 install scrapyd
  • 默认安装在python3/bin下有scrapyd文件
  • 创建目录 /etc/scrapyd
  • 创建文件 scrapyd.conf
[scrapyd]
eggs_dir    = eggs
logs_dir    = logs
items_dir   =
jobs_to_keep = 5
dbs_dir     = dbs
max_proc    = 0
max_proc_per_cpu = 4
finished_to_keep = 100
poll_interval = 5.0
bind_address = 127.0.0.1  最好不要开放 外网  不安全  请删除这段中文说明
http_port   = 6800
debug       = off
runner      = scrapyd.runner
application = scrapyd.app.application
launcher    = scrapyd.launcher.Launcher
webroot     = scrapyd.website.Root

[services]
schedule.json     = scrapyd.webservice.Schedule
cancel.json       = scrapyd.webservice.Cancel
addversion.json   = scrapyd.webservice.AddVersion
listprojects.json = scrapyd.webservice.ListProjects
listversions.json = scrapyd.webservice.ListVersions
listspiders.json  = scrapyd.webservice.ListSpiders
delproject.json   = scrapyd.webservice.DeleteProject
delversion.json   = scrapyd.webservice.DeleteVersion
listjobs.json     = scrapyd.webservice.ListJobs
daemonstatus.json = scrapyd.webservice.DaemonStatus

具体含义 自行百度

  • 启动
    /usr/local/python3/bin/scrapyd
    
  • 检查启动情况
    127.0.0.1:6800
    
  • 后台运行
    nohup python3 scrapyd 2>&1 &
    
  • 配置
    设置爬虫(你的项目)根目录下scrapy.cfg配置文件
    编辑项目名称project = projectA (可以默认)
    deploy下添加 url = http://127.0.0.1:6800/ (ip地址与scrapyd.conf相同)
    如图
    在这里插入图片描述

九、安装scrapyd-client

pip3 install scrapyd-client
  • 将python3/bin下 scrapyd-deploy文件复制到爬虫根目录
  • 进入项目进行部署你的爬虫(爬虫有改动需要重新部署)
    python3 scrapyd-deploy default -p projectA
    
  • 查看当前主机已经部署的Scrapy项目
    curl http://127.0.0.1:6800/listprojects.json
    
  • 执行爬虫
    curl http://127.0.0.1:6800/schedule.json -d project=projectA -d spider=爬虫name
    
  • 停止爬虫
    curl http://127.0.0.1:6800/cancel.json -d project=spider_demo -d job=097cd29aa6ef11e8ab735254003796ff
    
  • 删除部署
    curl http://127.0.0.1:6800/delproject.json -d project=projectA
    
  • 查看job
    curl http://127.0.0.1:6800/listjobs.json?project=m_manhuabei
    

十、定时任务

官网:https://linuxtools-rst.readthedocs.io/zh_CN/latest/tool/crontab.html

  • 创建、编辑计划任务的命令为 crontab -e

  • 查看当前计划任务命令为 crontab -l

  • 删除某条计划任务为 crontab -r

  • crontab服务操作说明:
    启动服务

    /sbin/service crond start 
    

    关闭服务

    /sbin/service crond stop
    

    重启服务

    /sbin/service crond restart
    

    重新载入配置

    /sbin/service crond reload
    

例子:
每分钟执行testH.py文件

crontab */1 * * * * /usr/bin/curl  python3 testH.py
//  每天凌晨2点30分执行
30 */2 * * * curl http://127.0.0.1:6800/schedule.json -d project=aProject -d spider=bSpider

// 每天12点、0点 执行
0 */12 * * * curl http://127.0.0.1:6800/schedule.json -d project=aProject -d spider=bSpider

// 每天凌晨2点执行
0 2 * * * curl http://127.0.0.1:6800/schedule.json -d project=aProject -d spider=bSpider

日志位置: /var/log/cron

十一、Crypto 解密

安裝Crypto 解密使用
一般安裝完后显示找不见Crypto,找到python\lib\site-packages下的Crypto,把C改为大写C

报错 No module named ‘Crypto.Cipher’”
pip install pycryptodome


  • 查看 磁盘使用情况
du -h --max-depth=1 /

排序显示

du -h --max-depth=1 / | sort -n

报错

PHP Warning: PHP Startup: Unable to load dynamic library ‘/usr/lib64/php/modules/mysql.so’ - libmysqlclient.so.18: cannot open shared object file: No such file or directory in Unknown on line 0

我遇到错误的原因是:项目运行一段时间后 mysql出错重新安装的,运行一段时间后莫名其妙就报错了

我的解决方法是:

  • 卸载php 重新安装 没用
  • 找到libmysqlclient.so.18 将目录添加到 etc/ld.so.conf 后 执行 ldconfig 刷新 解决
  • 在这里插入图片描述
    在这里插入图片描述
  • 重启服务(service httpd resatrt)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

马志武

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值