一文秒懂apache配置文件和服务
挂载光盘 配置yum源
mount /dev/cdrom/ /media/
[root@Centos7 yum.repos.d]# cat yum.repo
[yum]
name=yum
baseurl=file:///media
enabled=1
gpgcheck=0
使用yum 安装httpd
yum -y install httpd
systemctl restart httpd
出现以下页面便是成功了
搭建自己专属的页面 网站
[root@Centos7 html]# echo "Huizhong is very good" >> index.html
[root@Centos7 html]# pwd
/var/www/html
配置文件详解
httpd.conf 文件是 Apache HTTP 服务器的主配置文件,它包含了服务器的各种配置信息,如监听端口、虚拟主机、目录别名、认证授权、日志记录等等。下面对 httpd.conf 文件的主要配置项进行详细解释:
1. ServerRoot:指定 Apache 的根目录,一般情况下为 /usr/local/apache 或 /etc/httpd。
2. Listen:指定 Apache 监听的端口号,默认为 80。
3. ServerName:指定 Apache 服务器的主机名,一般设置为域名。
4. DocumentRoot:指定 Apache 的默认文档根目录,一般为 /var/www/html。网站根目录 主目录
5. DirectoryIndex:指定 Apache 服务器默认的首页文件,一般为 index.html。如果有php 就是Index.php
6. ErrorLog:指定 Apache 错误日志的存放路径。
7. CustomLog:指定 Apache 访问日志的存放路径。
8. Options:指定 Apache 的选项,如 FollowSymLinks、Indexes、ExecCGI 等。
9. AllowOverride:指定允许覆盖 Apache 配置的选项,如 FileInfo、AuthConfig、Limit 等。
10. Order:指定 Apache 的访问控制顺序,如 Allow、Deny、Satisfy 等。
11. Directory:指定 Apache 的目录访问控制,如 Require all granted。
12. VirtualHost:指定 Apache 的虚拟主机,包括 ServerName、DocumentRoot、ErrorLog、CustomLog
用法如下
访问一个目录给与的权限
<Directory>
Options Indexes #允许目录列表访问,当我们默认文件不在的时候 则显示列表
Order deny,allow #Order 是一个用于控制访问授权顺序的指令
Allow from 10.0.0.5/8 #运行这个IP地址访问
deny from all #拒绝所有IP地址地址访问
<Require> ##注意此类写法是在2.4版本以后 支持上面的2.2版本
require all granted
require all dentied
require not ip 10.0.0.6/8
</Require>
</Directory>
设置别名目录
mkdir /usr/loal/phpdata/
echo "This is ALias PHPdata" >> index.html
Alias /test/ "/usr/local/phpdata/"
<Directory "/usr/local/phpdata/">
AllowOverride None
Options Indexes FollowSymLinks
Require all granted
</Directory>
配置用户访问 进行限制
Alias /test/ "/usr/local/phpdata/"
<Directory "/usr/local/phpdata/">
AllowOverride None
Options Indexes FollowSymLinks
Require all granted
authtype basic
authname "my web site"
authuserfile /etc/httpd/conf/passwd
require valid-user
</Directory>
htpasswd /etc/httpd/conf/passwd lisi
htpasswd /etc/httpd/conf/passwd zs
重启服务 systemctl restrt httpd
登录用户 成功才可以访问页面
虚拟主机的三种方式
基于不同的Ip地址进行访问
<VirtualHost 10.0.0.4>
#Listen 80
ServerAdmin aqilinux@163.com
DocumentRoot /var/www/html
ServerName aqlinux.huizhong.com
ErrorLog logs/aqilinux@163error_log
CustomLog logs/aqilinux@163arror_log common
</VirtualHost>
<VirtualHost 10.0.0.40>
#Listen 81
ServerAdmin aqilinux@163.com
DocumentRoot /var/www/html/aq/
ServerName aq.huizhong.com
ErrorLog logs/aqilinux@163error_log
CustomLog logs/aqilinux@163arror_log common
</VirtualHost>
基于不同的域名进行访问
<VirtualHost 10.0.0.4>
ServerAdmin aqilinux@163.com
DocumentRoot /var/www/html
ServerName aqlinux.huizhong.com
ErrorLog logs/aqilinux@163error_log
CustomLog logs/aqilinux@163arror_log common
</VirtualHost>
<VirtualHost 10.0.0.4>
ServerAdmin aqilinux@163.com
DocumentRoot /var/www/html/aq/
ServerName aq.huizhong.com
ErrorLog logs/aqilinux@163error_log
CustomLog logs/aqilinux@163arror_log common
</VirtualHost>
基于 IP地址不同端口进行 访问
<VirtualHost 10.0.0.4:80>
ServerAdmin aqilinux@163.com
DocumentRoot /var/www/html
ServerName aqlinux.huizhong.com
ErrorLog logs/aqilinux@163error_log
CustomLog logs/aqilinux@163arror_log common
</VirtualHost>
<VirtualHost 10.0.0.4:81>
ServerAdmin aqilinux@163.com
DocumentRoot /var/www/html/aq/
ServerName aq.huizhong.com
ErrorLog logs/aqilinux@163error_log
CustomLog logs/aqilinux@163arror_log common
</VirtualHost>
DocumentRoot /var/www/html/aq/
ServerName aq.huizhong.com
ErrorLog logs/aqilinux@163error_log
CustomLog logs/aqilinux@163arror_log common
</VirtualHost>