Apache服务器的搭建与配置
一、Yum安装
1. Yum安装Apache
[root@localhost ~]# yum -y install httpd # 安装
[root@localhost ~]# rpm -qa | grep httpd # 查看http包
httpd-tools-2.4.6-97.el7.centos.5.x86_64
httpd-2.4.6-97.el7.centos.5.x86_64
安装成功后,会新增下面文件
/etc/httpd # http安装目录
/etc/httpd/conf/httpd.conf # http主配置文件
/var/www/html # 默认网站家目录
2. 配置文件参数简介
[root@localhost ~]# vi /etc/httpd/conf/httpd.confAddDefaultCharset UTF-8 # 字符编码
ServerRoot "/etc/httpd" # 存放配置文件的目录
Listen 80 # 监听端口
Include conf.modules.d/*.conf # 包含模块目录的配置文件
User apache # 子进程用户
Group apache # 子进程组
ServerAdmin root@localhost # 管理员邮件地址
#ServerName www.example.com:80 # 域名主机名
DocumentRoot "/var/www/html" # 网站家目录# 设置Document Root指定目录属性
<Directory "/var/www/html">Options Indexes FollowSymLinks # 找不到主页时,允许以目录的形式访问,并允许链接到网站根目录以外AllowOverride None # none,不适用htaccess控制,all允许Require all granted # granted表示运行所有访问,denied表示拒绝所有访问
</Directory>DirectoryIndex index.html # 定义主页文件,当访问到网站目录时,如果有定义的主页文件,网站会自动访问
ErrorLog "logs/error_log" # 错误日志文件位置及文件名
3. 启动服务
[root@localhost httpd]# systemctl restart httpd
[root@localhost httpd]# systemctl status httpd
● httpd.service - The Apache HTTP ServerLoaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)Active: active (running) since 五 2022-06-17 18:11:19 CST; 29s agoDocs: man:httpd(8)man:apachectl(8)Main PID: 100535 (httpd)Status: "Total requests: 0; Current requests/sec: 0; Current traffic: 0 B/sec"CGroup: /system.slice/httpd.service├─100535 /usr/sbin/httpd -DFOREGROUND├─100536 /usr/sbin/httpd -DFOREGROUND├─100537 /usr/sbin/httpd -DFOREGROUND├─100538 /usr/sbin/httpd -DFOREGROUND├─100539 /usr/sbin/httpd -DFOREGROUND└─100540 /usr/sbin/httpd -DFOREGROUND
4. 设置防火墙
[root@localhost httpd]# firewall-cmd --zone=public --add-port=80/tcp --permanent
success
[root@localhost httpd]# firewall-cmd --reload
success
5. 浏览器访问验证
二、 编译安装
1. 安装依赖
[root@localhost ~]# yum -y install gcc make zlib-devel pcre pcre-devel openssl-devel
2. 下载源码包
官网地址:Download - The Apache HTTP Server Projecthttp://httpd.apache.org/download.cgi
3. 上传安装包到服务器目录下
4. 解压
[root@localhost ~]# tar -zxvf httpd-2.4.54.tar.gz
5. 进入解压目录,编译安装,安装到/usr/local/目录下
[root@localhost httpd-2.4.54]# ./configure --prefix=/usr/local/apache && make && make install
6. 启动服务
[root@localhost apache]# ./bin/apachectl start[root@localhost apache]# ps -ef | grep apache
root 125218 1 0 07:21 ? 00:00:00 /usr/local/apache/bin/httpd -k start
daemon 125219 125218 0 07:21 ? 00:00:00 /usr/local/apache/bin/httpd -k start
daemon 125220 125218 0 07:21 ? 00:00:00 /usr/local/apache/bin/httpd -k start
daemon 125221 125218 0 07:21 ? 00:00:00 /usr/local/apache/bin/httpd -k start
7. 常用命令
[root@localhost ~]# /usr/local/apache/bin/apachectl -M # 查看常见的模块(静态和动态)[root@localhost ~]# /usr/local/apache/bin/apachectl -l # 查看加载的静态模块[root@localhost ~]# /usr/local/apache/bin/apachectl -t # 检查配置文件是否有错误[root@localhost ~]# /usr/local/apache/bin/apachectl graceful # 加载配置文件但不重启[root@localhost ~]# /usr/local/apache/bin/apachectl restart|start|stop # 重启|启动|停止服务
三、 配置用户认证
1. 修改配置文件httpd-vhosts.conf,增加如下代码
[root@localhost apache]# vi conf/extra/httpd-vhosts.conf<VirtualHost *:80>DocumentRoot "/var/www/html/test"<Directory /var/www/html/test>AllowOverride AuthConfigAuthName "final"AuthType BasicAuthUserFile /var/www/html/test/.htpasswd # 指定存放用户名和密码的文件require valid-user<Directory>
<VirtualHost>
2. 修改配置文件httpd.conf
# 修改前
# Include conf/extra/httpd-vhosts.conf# 修改后
Include conf/extra/httpd-vhosts.conf
3. 制作软连接
[root@localhost bin]# ln -s /usr/local/apache/bin/htpasswd /usr/local/bin/htpasswd
4. 创建目录
[root@localhost bin]# mkdir -p /var/www/html/test
5. 生成密码文件
[root@localhost test]# htpasswd -c /var/www/html/test/.htpasswd final # 指定用户名为final
New password:
Re-type new password:
Adding password for user final
6. 重启服务
7. 验证
在浏览器中输入http://localhost/虚拟目录
四、配置默认虚拟主机
1. 修改主配置文件httpd.conf
[root@localhost ~]# vi /usr/local/apache/conf/httpd.conf<Directory />AllowOverride noneRequire all denined # 修改为granted
</Directory>Include conf/extra/httpd-vhosts.conf # 取消注释
2. 修改虚拟配置文件httpd-vhosts.conf
[root@localhost ~]# vi /usr/local/apache/conf/extra/httpd-vhosts.conf# 删除原先配置,增加如下代码
<VirtualHost *:80>DocumentRoot "/var/www/html/test/" # 可以没有目录ServerName www.test.com
</VirtualHost><VirtualHost *:80>DocumentRoot "/var/www/html/ceshi/"ServerName www.ceshi.com
</VirtualHost>
五、 配置静态缓存
对于图片、css、html、JavaScript,允许客户端进行缓存,访问时无需和服务端进行通信,提高用户体验。使用前需要确认是否支持mod_expires.c模块。
[final@www ~]$ vi /usr/local/apache/conf/extra/httpd-vhosts.conf <IfModule mod_expires.c>ExpiresActive on # 启用模块ExpiresByType image/gif "access plus 1 days" # 指定类型缓存时间ExpiresByType image/jpeg "access plus 24 hours"ExpiresByType image/png "access plus 24 hours"ExpiresByType text/css "now plus 2 hours"ExpiresByType application/x-javascript "now plus 2 hours"ExpiresByType application/x-shockwave "now plus 2 hours"ExpiresByType "now plus 0 min"
</IfModule>
六、 配置防盗链
防止其它网站大量使用自己网站内的一些图片,使用过多的流量,造成带宽的浪费。
[final@www ~]$ vi /usr/local/apache/conf/extra/httpd-vhosts.confSetEnvIfNoCase Referer "^http://.*\.test\.com" local_ref # 给网址做标注
<filesmatch "\.(txt|png|gif|mp3|zip|rar|jpg|css|js)"> # 指定文件类型Order Allow,Deny # 禁止引用,先允许后拒绝,默认拒绝所有;Order Deny,Allow,先拒绝后允许,默认允许所有Allow from env=local_ref # 允许local_ref引用
</filesmatch>
注:Order Allow,Deny禁止引用,先允许后拒绝,默认拒绝所有;Order Deny,Allow,先拒绝后允许,默认允许所有
七、 访问控制
[final@www ~]$ vi /usr/local/apache/conf/extra/httpd-vhosts.conf# 针对某些目录进行访问控制,禁止指定IP访问
<Directory "/data/www">AllowOverride NoneOptions NoneOrder allow,denyAllow from alldeny from 192.168.201.1 # 该IP地址为禁止访问IP地址
</Directory># 针对URI做访问限制,所有URI中包含admin的都进行访问限制
<filesmatch "(.*)admin(.*)">Order allow,denyAllow from allDeny from 192.168.206.1/24
</filesmatch>
Apache服务器的搭建与配置相关推荐
- linux中apache服务器的搭建与配置
linux下apache服务器的搭建与配置 下面我们来介绍一下apache服务器的搭建以及配置 apache它是一种web服务器,我们可以通过apache将我们的网页挂载上去,然后提供给用户访问 首先 ...
- Svn服务器的搭建与配置
本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb 要把svn代码同步到git服务器上,本来是想通过subgit直接同步进行就行了.但是自已 ...
- cdn之高速缓存服务器的搭建和配置
一.cdn 1.名词解释 以下引用子百度百科 CDN的全称是Content Delivery Network,即内容分发网络.其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节, ...
- Windows 网络服务架构系列课程详解(一) ----DHCP服务器的搭建与配置
Windows 网络服务架构系列课程详解(一) ---------DHCP服务器的搭建与配置 实验背景: 企业网络环境中在没有配置DHCP服务器时,经常会遇到这样的情况,用户不懂怎么去配置IP地址 ...
- CentOS下Apache服务器的安装与配置
配置服务文件参数 服务目录 /etc/httpd 配置文件 /etc/httpd/conf/httpd.conf 网站数据目录 /var/www/html 访问目录 /var/log/httpd/ac ...
- php实现git服务器,如何搭建和配置Git服务器
本篇文章给大家带来的内容是介绍如何搭建和配置Git服务器,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 安装Git 安装依赖yum install curl-devel expat- ...
- Linux下samba服务器的搭建与配置
一.Samba概述 Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服务块)是一种在局域网上共享 ...
- Linux(RHEL7及CentOS7)下DNS服务器的搭建与配置
一.基本概念 DNS即Domain Name System ,域名系统,因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串.通 ...
- linux中ftp服务器的搭建和配置
linux中的ftp服务的搭建及配置 1 ftp概述 2 ftp服务的搭建 2.1 ftp的客户端 2.2 FTP的服务端 2.2.1 服务端软件vsftpd的下载 2.2.2 vsftp的环境配置 ...
最新文章
- 【Linux】一步一步学Linux——Linux版本(03)
- javascript设计模式之外观模式
- CSS布局奇淫巧计之-强大的负边距
- 6个案例手把手教你用Python和OpenCV进行图像处理
- 八皇后问题初始思路python_【单人解谜】经典的八皇后问题解析
- SAP License:关于工作我的一些体会
- 家里有古玩古董摆放在家中好吗?
- matlab聚合矩阵,c#和ILNumerics与Matlab中最有效的矩阵聚合方式
- Pytorch安装步骤
- 计算机网络知识点总结-第二章:物理层
- C# 利用winrar解压带密码的压缩包
- 【综述】计算机视觉简介:历史、现状和发展趋势【可下载】
- ssl申请证书的步骤是如何的呢?
- [14] 胜利大逃亡
- Linux中的lo回环接口详细介绍
- SQL Server 导入.mdf和.ldf文件
- acm刷题一些总结,至每一个努力拼搏的acmer
- 图片去雾软件推荐,这些软件值得一试
- 人民日报:三问区块链
- 开发者成功在苹果M1Mac设备上运行Switch游戏
热门文章
- amd一键超频怎么用_AMD新版显卡驱动为“肾上腺素 2019”:支持一键超频,语音截屏...
- 登录页面html引入vue,用vue写简单的登录注册总结
- USB Type-c手机无线领夹麦克风(MIC)快充方案,直播神器
- 理解快速离散傅里叶变换算法(FFT)
- 虚拟化与云计算的区别
- Fireworks 制作美式涂鸦文字
- Word 2007 学习中的问题
- vue导入及使用本地图片
- 电大计算机专业软件工程试题,2021国家开放大学电大本科《软件工程》期末试题及答案(试卷号:1260)...
- SendMail:古老但不古板的神奇邮件系统