CentOS搭建Apache服务器

安装对应的软件包

root@hds \~\]# yum install httpd mod_ssl -y

查看防火墙的状态和selinux

root@hds \~\]# systemctl status firewalld \[root@hds \~\]# cat /etc/selinux/config

若未关闭,则关闭防火墙和selinux

root@hds \~\]# systemctl stop firewalld \[root@hds \~\]# systemctl disable firewalld Removed /etc/systemd/system/multi-user.target.wants/firewalld.service. Removed /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. \[root@hds \~\]# setenforce 0 \[root@hds \~\]# sed "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config

启动httpd服务设为开机自启

root@hds \~\]# systemctl start httpd \[root@hds \~\]# systemctl enable httpd Created symlink /etc/systemd/system/multi-user.target.wants/httpd.service → /usr/lib/systemd/system/httpd.service.

创建三个网站根目录对应三种用户

root@hds \~\]# mkdir /www/8080 -p \[root@hds /\]# mkdir /www/80 \[root@hds /\]# mkdir /www/ssl

配置根目录网站文件

root@hds 80\]# echo "welcome to 80" \> skills80.html \[root@hds 8080\]# echo "welcome to 8080" \> skills8080.html \[root@hds ssl\]# echo "welcome to ssl" \> skillsssl.html

创建并配置网站:8080的访问控制文件和网站访问用户

root@hds 8080\]# vim .htaccess > authname "welcome to 8080" > > #访问目录时的提示信息 > > authtype basic > > #加密类型 > > authuserfile /www/8080 > > #存储访问网站用户的账号密码信息 > > require valid-user > > #允许密码文件中的用户访问 > \[root@hds 8080\]# htpasswd -cb .htpasswd webuser1 webuser1 > > Adding password for user webuser1 > > \[root@hds 8080\]# htpasswd -b .htpasswd webuser2 webuser2 > > Adding password for user webuser2 ## **生成https的密钥和证书** > cd /etc/pki/tls/private > > \[root@hds private\]# openssl genrsa -out ca.key 2048 > > \[root@hds private\]# openssl req -x509 -new -key ca.key -out ca.crt -days 365 > > \[root@hds private\]# mv ca.crt ../certs/ ## **修改证书和密钥的位置** \[root@hds \~\]# vim /etc/httpd/conf.d/ssl.conf![](https://i-blog.csdnimg.cn/direct/3adb1206f33e48468e6d9029fcda0c2e.png) ## **基于\该字段配置基于域名的虚拟主机** > \ > > DocumentRoot "/www/ssl/" > > ServerName www.hds.com > > \ > > options all > > AllowOverRide none > > Require all granted > > \ ## **配置8080和80的网站** > \[root@hds \~\]# vim /etc/httpd/conf/httpd.conf > > Listen 80 > > \ > > DocumentRoot "/www/80/" > > ServerName www.hds.com > > \ > > Options all > > AllowOverRide none > > Require all granted > > \ > > \ > > Listen 8080 > > \ > > DocumentRoot "/www/8080/" > > ServerName www.hds.com > > \ > > Options all > > AllowOverRide all > > require all granted > > \ > > \ ![](https://i-blog.csdnimg.cn/direct/6b8fea4d43bb45bd8a41bc455e8ad193.png) ## **修改可以检索的网页文件** ![](https://i-blog.csdnimg.cn/direct/6a8d44c30d0b4274a18fd7b961b5d487.png) ## **测试** 8080端口 ![](https://i-blog.csdnimg.cn/direct/f4a00d05db804c5285bd7003c4c29545.png) 443端口 ![](https://i-blog.csdnimg.cn/direct/b93bd0987fd6425baecb24f66361310a.png) 80端口 ![](https://i-blog.csdnimg.cn/direct/06a62301328d49a282bb7f8fc921261b.png)

相关推荐
coppher1 分钟前
Ubuntu 22.04 amd64 离线安装 Docker 完整教程
linux·docker
xyz59915 分钟前
如何在 WSL 中删除指定版本的 Ubuntu 以及安装
linux·运维·ubuntu
linux修理工22 分钟前
Claude code与CC-switch安装使用
运维·人工智能
小叶lr25 分钟前
jenkins打包前端样式丢失/与本地不一致问题
运维·前端·jenkins
Agent产品评测局29 分钟前
互联网行业自动化平台选型,运营全流程提效指南:2026企业级智能体架构与实战全解析
运维·人工智能·ai·chatgpt·架构·自动化
亚空间仓鼠43 分钟前
OpenEuler系统常用服务(五)
linux·运维·服务器·网络
AI成长日志2 小时前
【AI原生开发实战】1.2 传统开发 vs AI原生开发:思维转变与架构差异
服务器·架构·ai-native
minji...2 小时前
Linux 线程同步与互斥(二) 线程同步,条件变量,pthread_cond_init/wait/signal/broadcast
linux·运维·开发语言·jvm·数据结构·c++
2301_780789662 小时前
零信任架构在云安全落地过程中的最佳实践
服务器·人工智能·游戏·架构·零信任
虚伪的空想家2 小时前
k8s集群configmap和secrets备份脚本
linux·容器·kubernetes