通过http将yum仓库发布
说明:这里是Linux服务综合搭建文章的一部分,本文可以作为单独构建http和发布yum仓库到内网的参考。
注意:这里所有的标题都是根据主要的文章(Linux基础服务搭建综合)的顺序来做的。
如果需要查看相关软件版本和主机配置要求,请根据目录自行查看。
Linux服务综合搭建的文章目录
====================================================
5、foundation通过Rsyslog搭建集中日志服务器
8、rhel7 JAVA web环境搭建(使用Tomcat8整合httpd)
10、foundation配置kerberos和NTP服务以及安全的NFS挂载
====================================================
主机角色说明

3、通过http将yum仓库发布
在foundation配置一个httpd服务(监听在80端口),用于我们把YUM源通过http发布出来。域名是pakg.mei.com
3.1 安装httpd
1 [root@foundation:~# yum install httpd
2
3 [root@foundation:~# systemctl enable httpd && systemctl restart httpd && systemctl status httpd
4
5 [root@foundation:~# firewall-cmd --permanent --add-service=httpd && firewall-cmd --reload
部分截图如下

设置服务为开机自启动,并且重启和查看运行状态。

配置防火墙,允许http服务通过,也可以直接手动添加端口。


把yum仓库实际位置做一个软链接到站点下。

把yum仓库实际位置做一个软链接到站点下,但是这样其实不够安全(虽然我们有开启了SELinux),
如果这样做我们就得在httpd中允许FollowSymLinks符号链接,但是我们一般不希望这样。
所以这里我们直接把整个yum仓库移动到站点下。

配置SELinux
1 [root@foundation:/# semanage fcontext -a -t httpd_sys_content_t '/web(/.*)?'
2
3 [root@foundation:/# restorecon -FRv /web/
下面是部分截图

配置虚拟主机
先移除默认的虚拟主机,配置文件为:welcome.conf,因为我们要做的是下载站,所以没有主页,当没有默认主页的时候这个welcome.conf中定义的虚拟主机是会自动跳转到默认错误页面的。

先去掉主配置文件中的FollowSymLinks ,我们不需要。
由于我们做的是下载站,所以保留Indexes参数,这样能够进行目录浏览。

我们在单独的文件中配置好虚拟主机。pakg.conf文件,名字无所谓,但后缀一定要是.conf,名字也最好能够有点意义。
说明:我们这里也特意定义了 Options Indexes 目的是当我们这里还有其它虚拟主机的时候,
其它虚拟主机我们可能不希望能够进行目录浏览,所以就必须去掉主配置文件中的Options Indexes,
这时候如果我们在这个虚拟主机中单独定义了,就不会对我们这个虚拟主机造成影响。
[root@foundation:/# cat >>/etc/http/conf.d/pakg.conf<<EOF
<VirtualHost *:80>
DocumentRoot "/web/www/pakg"
ServerName "pakg.mei.com"
Options Indexes
<Directory />
Require all denied
AllowOverride None
</Directory>
<Directory "/web/www">
Require all granted
AllowOverride None
</Directory>
<Directory "/web/www/pakg">
Require all granted
AllowOverride None
</Directory>
</VirtualHost>
EOF

测试语法,如果遇到下面的问题
httpd: Could not reliably determine the server's fully qualified domain name, using fe80::8a46:263a:8482:f2ac. Set the 'ServerName' directive globally to suppress this message
译:
httpd:使用fe80 :: 8a46:263a:8482:f2ac无法可靠地确定服务器的完全限定域名。全局设置“ServerName”指令以禁止显示此消息

进入httpd的主配置文件/etc/httpd/conf/httpd.conf中,将添加ServerName localhost:80或者ServerName localhost即可。


再次测试语法(能通过)

重启httpd服务,没有任何问题。

3.3 测试YUM源
由于这里我们yum源做的是RHEL7的,大版本更替不能把软件冒然安装在RHEL6上,所以我们用RHEL7这台主机做测试
配置YUM源
注意:这里的baseurl的路径一般配置到YUM的repodata目录的上一级,它会自动去找repodata目录,这里不要指定错了。

测试

3.4 测试
3.4.1 尝试安装软件
能够正常解析依赖,下载并安装软件,说明没有问题


3.4.2 图形化的Firefox进行访问
在rhel7主机上打开Firefox,输入http://pakg.mei.com
能够正常访问

最后希望大家提意见、转发、评论和交流!!!
通过http将yum仓库发布的更多相关文章
- Service系统服务(二):补充应用技巧、软连接与硬连接、man手册、zip备份、vim效率操作、自定义yum软件仓库、发布及测试yum仓库、编译安装软件包
一.补充应用技巧 目标: 本例要求掌握在运维中比较常用的一些扩展命令技巧的使用,完成下列小技巧操作: 1> 采用数值形式将目录/root的权限调整为 rwx------ 2> 将记录的 ...
- 如何从MySQL官方Yum仓库安装MySQL5.6
(一),2013年10月,MySQL开发团队正式宣布支持Yum仓库,这就意味着我们现在可以从这个Yum库中获得最新和最优版的MySQL安装包.本文将在一台全新安装的CentOS6上安装MySQL5.6 ...
- [转]如何从MySQL官方Yum仓库安装MySQL5.6
参考博文: 如何从MySQL官方Yum仓库安装MySQL5.6 Centos 升级Mysql版本或者Yum安装Mysql5.6 2013年10月,MySQL开发团队正式宣布支持Yum仓库,这就意味着我 ...
- yum仓库
1.概念: Yum仓库则是为进一步简化RPM管理软件难度而设计的,Yum能够根据用户的要求分析出所需软件包及其相关依赖关系,自动从服务器下载软件包并安装到系统 yum的工作原理:执行yum命令――&g ...
- yum仓库的定制
矮哥linux运维群: 93324526 笔者QQ:578843228 一.简介 软件包的分类.源码包脚本安装二进制包(rpm包.系统默认包) 源码包: C语言的源代码优点:开源,如果有能力,可以修改 ...
- 搭建YUM仓库
概述 YUM 主要用于自动安装.升级 rpm 软件包,它能自动查找并解决 rpm 包之间的依赖关系.要功的使用 YUM 工具安装更新软件或系统,就需要有一个包含各种 rpm 软件包的 reposito ...
- 关于yum网络版仓库(本地yum仓库的安装配置,如果没网了,做一个局域网内的yum仓库)
2017-11-13 22:49:48 1:两种方式: a.每一台机器都配一个本地文件系统上的yum仓库 file:///packege/path/ b.在局域网内部配置一台节点(server-b ...
- YUM仓库配置
YUM的前身是YUP(Yellow dog Updater,Yellow dog Linux的软件更新器),最初由TSS公司(Terra Soft Solutions,INC.)使用Python语言开 ...
- 如何从MYSQL官方YUM仓库安装MYSQL5.x 原理一样只要获取对的仓库依赖安装对的仓库依赖就ok了,我就是用这种安装的5.7
如何从MYSQL官方YUM仓库安装MYSQL5.6 2013年10月,MySQL开发团队正式宣布支持Yum仓库,这就意味着我们现在可以从这个Yum库中获得最新和最优版的MySQL安装包.本文将在一台全 ...
随机推荐
- iNeuOS工业互联网平台,在高校教学实训领域的应用
目 录 1. 概述... 2 2. 实训柜... 2 3. 培训内容... 4 4. 二次开发培训... 5 1. 概述 中国工业互联网从 0 ...
- 树莓派FRP内网穿透及自启动
内网穿透的步骤和文件存档 实验室在远方部署了电脑主机来采集数据和图片,每次去调试会很麻烦,因而使用FRP内网穿透使得我们可以在实验室访问主机. 主要功能 实现远程可访问和开机自启FRP程序服务 安装和 ...
- VBS脚本编程(6)——对象的创建与调用
对象:严格的说,对象是复杂数据和程序结构在内存中的表现,只有在程序运行时才存在.包含有方法和属性. 对象的创建及用法 1. Set 语句 将对象引用赋给一个变量或属性,或者将对象引用与事件关联. Se ...
- 有趣的开源项目集结完毕,HelloGitHub 月刊第 63 期发布啦!
兴趣是最好的老师,HelloGitHub 让你对编程感兴趣! 简介 分享 GitHub 上有趣.入门级的开源项目. 这里有实战项目.入门教程.黑科技.开源书籍.大厂开源项目等,涵盖多种编程语言 Pyt ...
- UVA 11475 Extend to Palindrome hash
题意: 给出一个字符串,让你往后添加最少的字符,使其成为回文串. 分析: 题目就相当于求后缀字符串为回文串的最长长度,判断回文串要O(n)时间,直接判断肯定不行.我们从后往前枚举,每次字符串与上一个字 ...
- nginx用Certbot配置免费SSL证书(ngx_http_ssl_module模块)
一.准备工作 1.先安装nginx https://files.cnblogs.com/files/blogs/676936/nginx-1.18.0.sh #nginx-1.18.0版安装脚本2.在 ...
- php+redis实现全页缓存系统
php redis 实现全页缓存系统之前的一个项目说的一个功能,需要在后台预先存入某个页面信息放到数据库,比如app的注册协议,用户协议,这种.然后在写成一个php页面,app在调用接口的时候访问这个 ...
- linux 中只显示目录的几种方法
ls 参数 -a 表示显示所有文件,包含隐藏文件-d 表示显示目录自身的属性,而不是目录中的内容-F 选项会在显示目录条目时,在目录后加一个/ ls -l total 8 drwxrwxr-x 2 r ...
- awk中printf的用法
printf函数 打印输出时,可能需要指定字段间的空格数,从而把列排整齐.在print函数中使用制表符并不能保证得到想要的输出,因此,可以用printf函数来格式化特别的输出. printf函数返 ...
- CG-CTF 签到
int __cdecl sub_401340(unsigned __int8 *a1) { int v2; // [esp+18h] [ebp-D0h] int v3; // [esp+1Ch] [e ...