Centos7 Apache配置文件解析以及配置虚拟主机vhost

apache服务器配置文件部分参数解析:

ServerRoot “/etc/httpd“                        //服务配置文件目录
PidFile run/httpd.pid		                   //PID文件
Listen 80			                           //默认监听端口
Include conf.modules.d/*.conf		           //包含模块目录的配置文件
User apache			                           //启动用户
Group apache		        	               //启动组
ServerAdmin root@localhost	                   //管理员邮箱
ServerName www.example.com:80	               //域名主机名
DocumentRoot “/var/www/html“	               //默认主页存放目录
DirectoryIndex index.html index.html.var	   //索引文件
<Directory "/var/www">                         //规定网站根目录的位置
    AllowOverride None
    # Allow open access:
    Require all granted
</Directory>
ErrorLog logs/error_log			               //错误日志
CustomLog logs/access_log combined	           //访问日志
AddDefaultCharset UTF-8                        //默认字符集
IncludeOptional conf.d/*.conf                  //包含了 conf.d/*.conf 的配置文件
 
<IfModule dir_module>
    DirectoryIndex index.html                  //默认索引
</IfModule>

配置Apache虚拟主机:

配置目标:

虚拟机1:www.gg.com
虚拟机2:www.bing2.com

1.创建虚拟主机文件目录

根据自己在Apache配置文件里设定的目录下创建你的虚拟主机目录
没做修改默认一般在 /var/www/html/

2.创建虚拟主机配置文件(把2个网站的配置文件写入vhost)

vim /etc/httpd/conf.d/vhost.conf (目录根据实际情况)
网站www.gg.com配置文件如下:

 <VirtualHost *:80>
DocumentRoot /var/www/html/mysql
ServerName www.gg.com
<Directory /var/www/html/mysql>
 Options Indexes FollowSymLinks
 AllowOverride All
 Order Allow,Deny
 Allow from all
</Directory>
</VirtualHost>

网站www.bing2.com配置文件如下:

 <VirtualHost *:80>
DocumentRoot /var/www/html/wordpress
ServerName www.gg.com
<Directory /var/www/html/ wordpress >
 Options Indexes FollowSymLinks
 AllowOverride All
 Order Allow,Deny
 Allow from all
</Directory>
</VirtualHost>

提示:可以用apachectl -t 检查下语法是否有误。
systemctl restart httpd #重启apache
完成上面配置后就可以了

3.修改客户端主机的hosts文件,以便能解析域名

在Centos下访问需要修改 /etc/hosts 的文件写入:

192.168.31.197(自己虚拟机的ip)  www.gg.com
192.168.31.197(自己虚拟机的ip)  www.pp.com

在windows下访问也需要修改hosts文件,hosts在windows环境下的路径为C:\Windows\System32\drivers\etc\。添加上面相同的内容:然后就可以输入域名访问啦

遇到的问题:
如果遇到设置好虚拟主机后在Centos下无法访问自己 127.0.0.1 那么请在vhost添加

<VirtualHost *:80>
    ServerName localhost
    DocumentRoot "你的apache根目录"
</VirtualHost>

并且在主配置文件注释掉ServerName 就可以正常访问了

### 配置 Apache 虚拟主机 为了在 CentOS配置 Apache 虚拟主机,需遵循一系列特定操作。对于虚拟主机的设置,可以通过编辑 `/etc/httpd/conf.d/virtual.conf` 文件实现[^1]: ```bash sudo vi /etc/httpd/conf.d/virtual.conf ``` 另一种方法是在主配置文件 `httpd.conf` 中进行修改,这适用于更全面的服务器配置调整[^2]。 #### 创建自定义配置文件 除了直接修改默认配置文件外,还可以通过创建独立的配置文件来简化管理和维护工作。此过程涉及进入 Apache配置目录并建立新的子目录用于存放额外的配置文件[^3]: ```bash [root@Dai ~]# cd /etc/httpd/conf/ [root@Dai conf]# mkdir host [root@Dai conf]# cd host/ [root@Dai host]# vim vhost.conf ``` 在此新文件中编写必要的虚拟主机设定语句。这种方法不仅保持了原有配置不变,还使得不同站点之间的隔离更加清晰明了。 #### 修改主配置文件 (可选) 如果希望进一步优化性能或安全策略,则可以选择编辑主配置文件 `/etc/httpd/conf/httpd.conf` 并适当注释某些选项以禁用全局范围内的功能[^4]。 ```bash sudo vi /etc/httpd/conf/httpd.conf ``` 需要注意的是,在实际部署过程中应当谨慎对待任何更改,并确保备份原始版本以便于出现问题时快速恢复。 --- ### DNS 设置 关于 DNS 方面的工作,虽然提到过创建名为 "host" 的目录以及在其内部添加 `vhost.conf` 文件,但这并不是标准做法;通常情况下,DNS 解析应由专门的服务提供商负责处理或是利用本地 BIND 服务完成域名解析任务。要验证某个给定域名称对应的 IP 地址是否正确无误,可以借助命令行工具 dig 或 nslookup 进行测试。 例如,使用 `dig` 命令查询某网站的 A 记录: ```bash dig example.com A +short ``` 而针对私有网络环境中的小型项目来说,也可以考虑采用 hosts 文件的方式来进行简单的映射关系指定——即编辑位于 `/etc/hosts` 的文本记录,格式如下所示: ```plaintext 192.0.2.1 www.example.local ``` 这样做能够满足开发调试阶段的需求而不必依赖外部权威机构提供的公共 DNS 服务。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值