Apache功能配置:访问控制、日志分割; 部署AWStats日志分析工具
目录
保持连接
访问控制
只允许指定ip访问
拒绝指定主机其他正常访问
用户授权
日志格式
日志分割
操作步骤
使用第三方工具cronolog分割日志
AWStats日志分析
操作步骤
访问AwStats分析系统
保持连接
Apache通过设置配置文件httpd-default.conf中相关的连接保持参数来开启与控制连接保持功能。
使用vim /usr/local/httpd/conf/extra/httpd-default.conf命令打开apache的默认配置文件
注意在httpd的主配置文件中将httpd-default.conf 的in clude前的注释符去掉,让主配置文件包含该配置文件
参数 | 说明 |
KeepAlive | 保持连接功能,OFF表示关闭,ON表示打开,可以根据网站的并发请求量决定是否打开,即在高并发时打开连接保持功能,并发量不高时关闭此功能。 |
MaxKeepAliveRequests | 用于设置在一次长连接中可以传输的最大请求数量,超过此最大请求数量就会断开连接,最大值的设置决定于网站中网页的内容,一般设置数量会多于网站中所有的元素。 |
KeepAliveTimeout | 表示一次连接多次请求之间的最大间隔时间,即两次请求之间超过该时间连接就会自动断开,从而避免客户端占用连接资源。 |
开启httpd服务后,在访问http服务时,在网页中按下F12,打开开发人员工具,在选中网络窗口,使用Ctrl + R刷新网页
选中主机ip,可以看到标头下的响应标头的信息,显示Keep-Alive已经开启,相关参数是timeout=5, max=97
现在来到默认配置文件(/usr/local/httpd/conf/extra/httpd-default.conf)中修改超时时间和最大连接数
保存并退出,使用systemctl restart httpd重启服务
此时来到浏览器刷新,可以看到最大连接数为90
访问控制
使用vim /usr/local/httpd/conf/httpd.conf命令进入httpd主配置文件
在末行模式下搜索Directory(:/Directory)可以找到单元,这个单元就规定了允许或拒绝用户访问哪些目录(访问权限)
<Directory "/usr/local/httpd/htdocs"># 省略注释Options Indexes FollowSymLinksAllowOverride NoneRequire ip 192.168.10.102 # 修改为ip地址
# Require ip 192.168.10.0/24 规定为网段也可以
</Directory>
图中的Require all denied规定了用户全都不能访问系统的根目录
往下翻一点,可以看到另一个Directory单元,这个单元中就规定了用户可以访问/usr/local/httpd/htdocs目录
只允许指定ip访问
<Directory "/usr/local/httpd/htdocs"># 省略注释Options Indexes FollowSymLinksAllowOverride NoneRequire ip 192.168.10.102 # 修改为ip地址
# Require ip 192.168.10.0/24 规定为网段也可以
</Directory>
修改后需要重启服务
然后打开一台带有图形化界面的虚拟机,比如win10或win11,或者使用第二台Linux主机,通过curl命令也可以
将其ip修改为192.168.10.102,访问Web服务器(192.168.10.101),可以看到访问是通过的
使用宿主机访问也不能正常访问了,403状态码
拒绝指定主机其他正常访问
<Directory "/usr/local/httpd/htdocs"># 省略注释Options Indexes FollowSymLinksAllowOverride None<RequireAll>Require all granted # 允许所有主机访问Require not ip 192.168.10.102 # 拒绝192.168.10.102访问</RequireAll>
</Directory>
此时除了刚刚开启的102主机其他的都可以正常访问Web服务器
用户授权
验证授权的方式变成账号密码,需要用到Apache自带的htpasswd工具生成
使用htpasswd命令生成文件,第一次创建需要加-c选项,后续就不需要加-c了
通过cat命令可以查看到生存的用户和密钥
[root@localhost ~]# cat /usr/local/httpd/conf/.example
tom:$apr1$9E2tS/4/$28pw.i5heCsVXYY9TA7Og/
jerry:$apr1$dQtbTAQw$w3QYXr8E62MzoYnNbUEiC1
再修改配置文件(/usr/local/httpd/conf/httpd.conf)
<Directory "/usr/local/httpd/htdocs"># 省略注释Options Indexes FollowSymLinksAllowOverride NoneAuthName "abc" # 指定授权域的名称或描述AuthType Basic # 指定了认证的类型为 Basic,即基本认证方式。AuthUserFile /usr/local/httpd/conf/.example # 指定了存储用户账号和密码的文件的路径Require valid-user # 要求访问受保护资源的用户必须提供有效的用户名和密码。
</Directory>
Basic:指定了认证的类型为 Basic,即基本认证方式。Basic Authentication 是一种简单的认证方式,客户端(通常是浏览器)会将用户名和密码以明文形式通过 HTTP 的 Authorization 头部发送给服务器。
最后在访问Web服务器时,就会被要求输入账号和密码
日志格式
打开Apache的主配置文件(/usr/local/httpd/conf/httpd.conf),在末行模式下搜索Log(:/Log)
可以看到httpd提供的两种日志格式,第一种是combined(组合格式),第二种是common(通用格式)
在下方可以看到access_log(访问日志)用的是通用格式来生成日志的,这里我们改成组合格式
改为组合模式
保存并退出,重启httpd服务,再次访问Web服务器。然后cat查看/usr/local/httpd/logs/access_log文件
可以看到最后一行的组合日志格式生成的日志
192.168.10.1 - - [10/Jul/2024:10:19:23 +0800] "GET / HTTP/1.1" 200 154 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36 Edg/126.0.0.0"
参数 | 说明 |
&h | 客户端的IP地址或主机名 |
%l | 客户端的标识符,如果启用了标识符(如通过 IdentLookups 配置),否则为 - |
%u | 请求时客户端提供的用户名(如果是用户认证登录,就显示为用户),否则显示 - |
%t | 请求的时间戳 |
\"%r\" | 客户端请求的第一行,包括 HTTP 方法、请求路径和协议 这里的 \ 是转义符 |
%>s | 服务器返回给客户端的HTTP状态码 |
%b | 传输给客户端的字节数,不包括HTTP头部的大小 |
\"%{Referer}i\" | 请求报文中首部 "referer" 的值;即从哪个页面中的超链接跳转至当前页面的,防止盗链,i就是首部的意思,Referer是链接到此URL的页面。 i是首部的意思,即请求头 |
\"%{User-Agent}i\" | 此项是客户端提供的浏览器识别信息,i是首部的意思,即请求头 |
&I | 服务器接收得字节数,需要启用mod_logio模块。 |
%O | 服务器发送得字节数,需要启用mod_logio模块。 |
日志分割
日志分割需要使用Apache自带的日志分割工具rotatelogs
操作步骤
依旧打开httpd主配置文件
将刚才修改日志格式的行注释掉,使用CustomLog指定日志记录的方式
#CustomLog "logs/access_log" combined
CustomLog "|/usr/local/bin/rotatelogs -l /var/log/httpd/access_%Y%m%d.log 86400" combined
参数 | 说明 |
| | 将生成的日志数据传递给一个外部程序进行处理或存储 |
/usr/local/bin/rotatelogs | 指定日志分割工具的路径 |
-l /var/log/httpd/access_%Y%m%d.log | 指定了日志文件的格式和存储位置 -l:用于指定日志文件的命名模式和路径 |
%Y%m%d | 表示将日期格式化为年(四位数)、月、日,例如 access_20240710.log |
86400 | 日志文件的滚动时间间隔,单位是秒。这里代表一天的秒数,即每隔一天就会生成一个新的日志文件。 |
保存并退出,重启服务。手动在指定的/var/log下创建httpd目录
再通过浏览器访问Web服务器,然后去/var/log/httpd/下查看access_20240710.log文件
[root@localhost httpd]# cat access_20240710.log
192.168.10.1 - - [10/Jul/2024:10:40:07 +0800] "GET / HTTP/1.1" 304 - "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36 Edg/126.0.0.0"
192.168.10.1 - - [10/Jul/2024:10:40:07 +0800] "GET / HTTP/1.1" 304 - "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36 Edg/126.0.0.0"
192.168.10.1 - - [10/Jul/2024:10:40:08 +0800] "GET / HTTP/1.1" 304 - "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36 Edg/126.0.0.0"
使用第三方工具cronolog分割日志
将源代码软件包拖入XShell,使用tar zxvf命令解压,进入解压目录
使用 ./configure,make && make instll 安装
进入/usr/local/sbin/目录下可以看到自动将命令安装进sbin目录下了
[root@localhost cronolog-1.6.2]# cd /usr/local/sbin/
[root@localhost sbin]# ls
cronolog cronosplit
进入httpd主配置文件,修改日志记录方式
#CustomLog "logs/access_log" combined
CustomLog "|/usr/local/sbin/cronolog /var/log/httpd/my_access_%Y%m%d.log" combined
保存并退出,重启服务。
再通过浏览器访问Web服务器,然后去/var/log/httpd/下查看my_access_20240710.log文件
[root@localhost httpd]# cat my_access_20240710.log
192.168.10.1 - - [10/Jul/2024:10:48:30 +0800] "GET / HTTP/1.1" 304 - "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36 Edg/126.0.0.0"
实验完成后把日志记录方式改为原来的,用于下一步日志分析的实验
CustomLog "logs/access_log" combined
#CustomLog "|/usr/local/sbin/cronolog /var/log/httpd/my_access_%Y%m%d.log" combined
AWStats日志分析
Awstats是一个免费非常简洁而且强大有个性的网站日志分析工具。
操作步骤
将源代码软件包拖入XShell,使用tar zxvf命令解压,然后使用mv awstats-7.7 /usr/local/awstats命令将解压出的目录移动到/usr/local/下并将目录名重命名为awstats
cd到/usr/local/awstats目录下,再进入tools子目录,可以看到这里存放着工具集
[root@localhost ~]# cd /usr/local/awstats/
[root@localhost awstats]# ls
docs README.md tools wwwroot
[root@localhost awstats]# cd tools/
[root@localhost tools]# ls
awstats_buildstaticpages.pl dolibarr maillogconvert.pl xslt
awstats_configure.pl geoip_generator.pl nginx
awstats_exportlib.pl httpd_conf urlaliasbuilder.pl
awstats_updateall.pl logresolvemerge.pl webmin
在该目录下使用awstats_configure.pl初始化
[root@localhost tools]# ./awstats_configure.plEnter full config file path of your Web server.
Example: /etc/httpd/httpd.conf # 使用yum安装的位置
Example: /usr/local/apache2/conf/httpd.conf # 使用源代码可能安装的位置
Example: c:\Program files\apache group\apache\conf\httpd.conf # Windows系统下可能安装apache的安装路径
Config file path ('none' to skip web server setup):
> /usr/local/httpd/conf/httpd.conf # 填入Apache的配置文件路径,回车-----> Need to create a new config file ? # 是否需要创建一个新的配置文件
Do you want me to build a new AWStats config/profile # 是否希望它创建一个新的AWStats配置文件或配置文件模板
file (required if first install) [y/N] ? y-----> Define config file name to create # 要求定义要创建的配置文件的名称
What is the name of your web site or profile analysis ?
Example: www.mysite.com
Example: demo
Your web site, virtual server or profile name:
> www.tom.com # 输入想命名的AWStats配置文件的名称-----> Define config file path # 设置配置文件的路径
In which directory do you plan to store your config file(s) ?
Default: /etc/awstats
Directory path to store config file(s) (Enter for default):
> # 这里使用默认路径 所以直接回车Press ENTER to continue...
# 回车,以继续
Press ENTER to finish...
# 回车,以结束
修改httpd配置文件,在命令模式下按下大写字母G,来到文件末尾,修改<Directory>标签为允许全部客户端访问该目录下的文件和脚本
[root@localhost ~]# vim /usr/local/httpd/conf/httpd.conf
<Directory "/usr/local/awstats/wwwroot">Options NoneAllowOverride NoneRequire all granted
</Directory>
编辑awstats初始化后生成的配置文件,然后创建存储AWStats数据的目录
[root@localhost tools]# vim /etc/awstats/awstats.www.tom.com.conf
在第50行,改为httpd路径位置
Logile="/usr/local/httpd/logs/access_log"
在第220行,改为如下内容
DirData="/var/lib/awstats" # 指定了AWStats存储数据文件的目录路径
[root@localhost awstats]# mkdir /var/lib/awstats
编辑当前用户的 cron 任务
[root@localhost tools]# crontab -e
*/2 * * * * /usr/local/awstats/tools/awstats_updateall.pl now*/2:表示每隔2分钟执行一次后面的命令
*:通配符,表示所有可能的值
/usr/local/awstats/tools/awstats_updateall.pl now:是要执行的命令或者脚本
再修改httpd配置文件,在命令模式下按下大写G来到文件末尾,在文件末尾添加IfModule标签加载不同模块,最后重启服务
[root@localhost ~]# vim /usr/local/httpd/conf/httpd.conf
<IfModule !mpm_prefork_module>LoadModule cgid_module modules/mod_cgid.so
</IfModule>
<IfModule mpm_prefork_module>LoadModule cgi_module modules/mod_cgi.so
</IfModule>重启服务
[root@localhost tools]# systemctl restart httpd
访问AwStats分析系统
在浏览器访问站点:http://192.168.10.101/awstats/awstats.pl?config=www.tom.com
相关文章:
Apache功能配置:访问控制、日志分割; 部署AWStats日志分析工具
目录 保持连接 访问控制 只允许指定ip访问 拒绝指定主机其他正常访问 用户授权 日志格式 日志分割 操作步骤 使用第三方工具cronolog分割日志 AWStats日志分析 操作步骤 访问AwStats分析系统 保持连接 Apache通过设置配置文件httpd-default.conf中相关的连接保持参…...
开源可视化Flutter图表库:Graphic
Graphic:用Graphic绘制数据的无限可能- 精选真开源,释放新价值。 概览 Graphic,这个基于Flutter的图表库,以其源自《The Grammar of Graphics》的灵感,为数据可视化提供了一种全新的方法。它不仅仅是一个工具…...
Linux搭建Socks5网络代理服务器,Centos 8 系统
一、目的用途 用于网络代理转发请求,隐藏真实的请求ip地址,或者用于绕过网络限制的目标服务器,将自己的访问请求到代理服务器,通过网络代理服务器将请求转发到目标服务器 二、安装Socks5前的准备 1、从官网下载ss5安装包…...
mysql 导出导入 数据库
导出 MySQL 数据库可以通过多种方法实现,最常见的方法是使用 mysqldump 工具。以下是一些常用的导出 MySQL 数据库的方法: 使用 mysqldump 工具 mysqldump 是一个命令行工具,用于导出 MySQL 数据库的结构和数据。以下是基本的导出命令&…...
linux_进程概念——理解冯诺依曼体系结构
前言: 本篇内容是为了让友友们较好地理解进程的概念, 而在真正了解进行概念之前, 要先了解一下冯诺依曼体系结构。 所以博主会先对冯诺伊曼体系结构进行解释, 然后再讲解进程的概念。 ps: 本篇内容适合了解一些linux指…...
Linux笔记之使用系统调用sendfile高速拷贝文件
Linux笔记之使用系统调用sendfile高速拷贝文件 code review! 文章目录 Linux笔记之使用系统调用sendfile高速拷贝文件sendfile 性能优势sendfile 系统调用优点:缺点: cp 命令优点:缺点: 实际测试:拷贝5.8个G的文件&a…...
OpenCV和PIL进行前景提取
摘要 在图像处理和分析中,前景提取是一项关键技术,尤其是在计算机视觉和模式识别领域。本文介绍了一种结合OpenCV和PIL库的方法,实现在批量处理图像时有效提取前景并保留原始图像的EXIF数据。具体步骤包括从指定文件夹中读取图像,…...
Linux虚拟化大师:使用 KVM 和 QEMU 进行高级虚拟化管理
Linux 虚拟化大师:使用 KVM 和 QEMU 进行高级虚拟化管理 虚拟化技术是现代数据中心的核心技术之一,它可以将一台物理服务器分割成多个虚拟机,从而提高资源利用率,降低成本,并增强系统的灵活性和可扩展性。KVM…...
CentOS-6的iso下载地址镜像yum源
CentOS6下载地址镜像yum源 从 CentOS官网 Vault Mirror 过期镜像库下载 下载iso光盘镜像,使用其提供的yum源 vault:保险库,墓穴 , Vault Mirror 是官方对过期镜像库的取名 CentOS官网 Vault Mirror 过期镜像库 可下载CentOS2,3,4,5,6,7,8 CentOS-Vault.repo对应的是发行该镜…...
【python】PyQt5可视化开发,鼠标键盘实现联动界面交互逻辑与应用实战
✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…...
Raw Socket(一)实现TCP三次握手
实验环境: Windows物理机:192.168.1.4 WSL Ubuntu 20.04.6 LTS:172.19.32.196 Windows下的一个http服务器:HFS,大概长这个样子: 客户端就是Ubuntu,服务端就是这个…...
考研数学开始的晚?别慌,超全复习规划拿去抄
实话实说,从七月中旬考研数一复习完真的有点悬,需要超级高效快速... 数二的时间也有点紧张...🥺 中间基本没有试错的时间,让你换老师换习题尝试,必须从头到尾规划好 而且相信你也不止自己,有很多考研党都是…...
创建React 项目的几种方式
①.react自带脚手架 使用步骤: 1、下载 npm i create-react-app -g 2、创建项目命令: create-react-app 项目名称 ②.Vite构建工具创建react步骤:(推荐) 方法一: 1、yarn create vite 2、后续根据提示步…...
探索Kotlin:从K1到K2
人不走空 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌赋:斯是陋室,惟吾德馨 嘿,小伙伴们!今天我们来聊聊Kotlin,这个在安卓开发圈里越来越火的编程语言。…...
Python爬虫速成之路(1):获取网页源代码
hello hello~ ,这里是绝命Coding——老白~💖💖 ,欢迎大家点赞🥳🥳关注💥💥收藏🌹🌹🌹 💥个人主页:绝命Coding-CSDN博客 &a…...
OpenGL笔记七之顶点数据绘制命令和绘制模式
OpenGL笔记七之顶点数据绘制命令和绘制模式 —— 2024-07-07 杭州 下午 总结自bilibili赵新政老师的教程 code review! 文章目录 OpenGL笔记七之顶点数据绘制命令和绘制模式1.OpenGL版本号更改和编译更改2.GL_TRIANGLES模式绘制一个三角形、支持NFC坐标随窗口缩放2.1.三个点…...
力扣题解( 最长湍流子数组)
978. 最长湍流子数组 已解答 给定一个整数数组 arr ,返回 arr 的 最大湍流子数组的长度 。 如果比较符号在子数组中的每个相邻元素对之间翻转,则该子数组是 湍流子数组 。 更正式地来说,当 arr 的子数组 A[i], A[i1], ..., A[j] 满足仅满…...
pytorch-RNN存在的问题
这里写目录标题 1. RNN存在哪些问题呢?1.1 梯度弥散和梯度爆炸1.2 RNN为什么会出现梯度弥散和梯度爆炸呢? 2. 解决梯度爆炸方法3. Gradient Clipping的实现4. 解决梯度弥散的方法 1. RNN存在哪些问题呢? 1.1 梯度弥散和梯度爆炸 梯度弥散是…...
Leetcode 17:电话号码的字母组合
给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 public List<String> letterCombinations(String digits) {if (digits null || digits.length() 0) {return result;}int index0; //记录遍历digits的角标//初始…...
jmeter-beanshell学习4-beanshell截取字符串
再写个简单点的东西,截取字符串,参数化文件统一用csv,然后还要用excel打开,如果是数字很容易格式就乱了。有同事是用双引号把数字引起来,报文里就不用加引号了,但是这样beanshell处理起来,好像容…...
QScrollArea 设置最大的高度值
在 Qt 中,QScrollArea 是一个提供滚动视图的控件,允许用户查看大于当前视口尺寸的内容。如果你想要为 QScrollArea 设置一个最大的高度值,这通常不是直接通过 QScrollArea 的属性来设置的,而是需要调整其内容部件(widg…...
CentOS6禁止锁屏
在电源中设置后还是会锁屏, 原因是有屏幕保护程序 电源管理都 “从不” 一些AI的回答 在CentOS 6系统中,如果你想要禁用锁屏功能,可以编辑/etc/kbd/config文件。这个文件通常包含了键盘相关的设置,包括密码策略和屏幕锁定选项。 首先打开终…...
MapReduce底层原理详解:大案例解析(第32天)
系列文章目录 一、MapReduce概述 二、MapReduce工作机制 三、Map,Shuffle,reduce阶段详解 四、大案例解析 文章目录 系列文章目录前言一、MapReduce概述二、MapReduce工作机制1. 角色与组件2. 作业提交与执行流程1. 作业提交:2. Map阶段&…...
【JVM基础篇】Java垃圾回收器介绍
垃圾回收器(垃圾回收算法实现) 垃圾回收器是垃圾回收算法的具体实现。由于垃圾回收器分为年轻代和老年代,除了G1(既能管控新生代,也可以管控老年代)之外,新生代、老年代的垃圾回收器必须按照ho…...
java通过poi-tl导出word实战详细步骤
文章目录 与其他模版引擎对比1.引入maven依赖包2.新建Word文档exportWprd.docx模版3.编写导出word接口代码4.导出成果 poi-tl是一个基于Apache POI的Word模板引擎,也是一个免费开源的Java类库,你可以非常方便的加入到你的项目中,并且拥有着让…...
将自签证书添加到Java的可信任证书列表中
文章目录 前言将自签证书添加到Java的可信任证书列表中添加到Java的可信任证书列表中 前言 如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易啊^ _ ^。 而且听说点赞的人每天的运气都不会太差,实…...
一文清晰了解CSS——简单实例
首先一个小技巧: 一定要学会的vsCode格式化整理代码的快捷键,再也不用手动调格式了-腾讯云开发者社区-腾讯云 (tencent.com) CSS选择器用于选择要应用样式的HTML元素。常见的选择器包括: 类选择器:以.开头,用于选择具…...
工程师 - 什么是XML文件
XML(eXtensible Markup Language,扩展标记语言)文件是一种使用自定义标签来定义对象及其内部数据的纯文本文件。XML设计的目的是既易于人类阅读又易于机器解析,因此它在不同系统和应用之间传输和存储数据时非常有用。 XML的主要特…...
[AI 大模型] 阿里巴巴 通义千问
文章目录 [AI 大模型] 阿里巴巴 通义千问简介模型架构发展新技术和优势示例 [AI 大模型] 阿里巴巴 通义千问 简介 阿里巴巴的 通义千问 是由阿里云开发的一款大型语言模型,旨在为用户提供高效、智能的自然语言处理服务。 通义千问能够处理多种语言输入,…...
关于无法定位程序输入点 SetDefaultDllDirectories于动态链接库KERNEL32.dll 上 解决方法
文章目录 1. ERNEL32.dll 下载2. 解决方法 👍 个人网站:【 洛秋小站】 1. ERNEL32.dll 下载 Windows 7 在安装postman时报错缺少动态链接库,提示缺少.NET Framework,这是因为本地缺少相应的dll文件导致的,这时就需要下载ERNEL32.dll文件,在解…...
看公狍和女人做爰网站/电子商务网站建设的步骤
作者简介 羊老师,目前就职于饿了么物流研发部,运单与服务业务线的测试负责人,同时也负责测试基础设施的开发与维护,致力于自动化测试及工程效率的提升工作 前言 在大型互联网架构中经常会用到消息队列(Message Queue&a…...
温州哪家做网站/青岛网站推广系统
1、安装pyinstallerpython安装目录下shift右键打开cmd 或者Powershell窗口输入pip install pyinstallerpython安装目录下Scripts文件夹下会出现 pyinstaller.exe2、添加环境变量在系统变量PATH中再加入"python安装地址Scripts",否则cmd中会提示‘pyinstal…...
机关公文写作网站/高佣金app软件推广平台
本文转自:https://blog.csdn.net/jeff06143132/article/details/25696371 连接Oracle,以Oracle用户登陆: $su - oracle$sqlplus 数据库用户/数据库密码 as sysdba输入查询: select * from dba_profiles where profileDEFAULT and resource_na…...
网站怎样做平面设计图/网站大全软件下载
编辑 /etc/gdm/custom.conf 文件,具体如下所示: 在daemon选项中修改AutomaticLoginEnabletrue,AutomaticLoginroot 如果daemon下为空则添加: AutomaticLoginEnabletrue AutomaticLoginroot 如: [daemon] Auto…...
做花酒的网站/广告推广计划
摘要:大数据时代已经到来。现阶段,我国大数据产业发展如何?大数据应用领域在哪?大数据价值在哪里?带着这些疑问,走进大数据,感受大数据带来的神奇魔力。关注作者:需要大数据学习视频…...
wordpress 多店铺/北京seo网站开发
步骤: 1,客户端向yarn的RM提交作业请求,RM进行权限等验证,生成jobid、资源上传路径,将jobId和资源上传路径返回给客户端; 2,客户端将jar包、配置文件、第三方包等文件上传到指定的hdfs路径后&…...