目录
概述
web服务器也称为www(WORLD WIDE WEB,万维网)服务器,主要提供网上信息浏览服务。
常见的web服务器:apache,nginx,tomcat,IIS
apache快速,可靠,可通过简单的API扩展,将perl/python等解释器编译到服务器中。
工作模式:B/S
端口: 80 http
443 https
安装
yum install httpd -y
1.修改配置文件相关参数
vim /etc/httpd/conf/httpd.conf
ServerRoot "/etc/httpd"#apache配置文件的根目录
Listen 80 #监听的端口:
ServerAdmin root@localhost #设置管理员,e-mail 地址
ServerName 192.168.0.31:80 #服务器主机名.
DocumentRoot "/var/www/html" #网站页面根目录
Options Indexes FollowSymLinks
Indexes #当一个目录没有默认首页时,允许显示此目录列表
FollowSymLinks #允许在此目录中使用符号连接
禁止 Apache 显示目录结构列表,只需将 Option 中的 Indexes 去掉即可,
MultiViews :模糊匹配
编码:
AddDefaultCharset UTF-8 # 设置服务器的默认编码为: UTF-8
2.取消默认欢迎页
vim /etc/httpd/conf.d/welcome.conf #注释其中4行即可
8 #<LocationMatch "^/+$">
9 # Options -Indexes
10 # ErrorDocument 403 /.noindex.html
11 #</LocationMatch>
3.测试php
在根目录/var/www/html下编辑index.php文件
<?php
phpinfo();
?>
打开浏览器,输入192.168.0.31/index.php
4.修改根目录,限制IP访问
将根目录设置为/var/www/html/test
<Directory "/var/www/html/test">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny #逗号后面优先级高
Allow from 192.168.0.0/24
#Deny from 192.168.0.0/24
Allow from www.baidu.com
Require all granted
</Directory>
5.别名功能
引用网站根目录以外的路径
cat /usr/local/phpmyadmin/a.html
test1
Alias /phpmyadmin "/usr/local/phpmyadmin/"
<Directory "/usr/local/phpmyadmin/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
Require all granted #给予授权
</Directory>
elinks 192.168.0.31/phpmyadmin --dump
test1
6.软链接
ln -s /web/ /var/www/html/web2
![](https://i-blog.csdnimg.cn/blog_migrate/4ab6957214c529fb7b658fa2e59e5391.png)
7.用户验证
方法一:
<Directory "/var/www/html/">
Options Indexes FollowSymLinks
AllowOverride AuthConfig #用户验证
Order allow,deny
Allow from 192.168.0.0/24
# Deny from 192.168.0.0/24
# Allow from www.baidu.com
authtype basic #基本验证
authname "admin software" #说明
authuserfile /etc/httpd/conf/passwd.secret #定义密码文件路径
require valid-user #有效用户
# Require all granted
</Directory>
htpasswd -cm /etc/httpd/conf/passwd.secret ksidc #生成认证用户ksidc和密码
方法二:
对192.168.0.31/phpmyadmin目录设置验证
Alias /phpmyadmin "/usr/local/phpmyadmin/"
<Directory "/usr/local/phpmyadmin/">
Options Indexes MultiViews FollowSymLinks
AllowOverride AuthConfig
Order allow,deny
Allow from all
#Require all granted
</Directory>
vim /usr/local/phpmyadmin/.htaccess
authtype basic
authname "test by use"
authuserfile /etc/httpd/conf/passwd.secret
require valid-user
8.虚拟主机
基于一台服务器运行多个网站
1.不同IP
添加网卡,设置新ip,设置两个路径
①/var/www/html,echo "www" > index.html
②/var/www/html/bbs , echo "bbs" > index.html
vim /etc/httpd/conf.d/vhost.conf
<VirtualHost 192.168.0.31:80>
ServerAdmin root@localhost
DocumentRoot /var/www/html
ServerName www.ksidc.cn
ErrorLog logs/www-error_log
CustomLog logs/www-access_log common
</VirtualHost>
<VirtualHost 192.168.0.32:80>
ServerAdmin root@localhost
DocumentRoot /var/www/html/bbs
ServerName bbs.ksidc.cn
ErrorLog logs/bbs_error_log
CustomLog logs/bbs-access_log common
</VirtualHost>
2.不同域名
<VirtualHost www.ksidc31.cn>
ServerAdmin root@localhost
DocumentRoot /var/www/html
ServerName www.ksidc.cn
ErrorLog logs/www-error_log
CustomLog logs/www-access_log common
</VirtualHost>
<VirtualHost bbs.ksidc32.cn>
ServerAdmin root@localhost
DocumentRoot /var/www/html/bbs
ServerName bbs.ksidc.cn
ErrorLog logs/bbs_error_log
CustomLog logs/bbs-access_log common
</VirtualHost>
更改本地hosts文件
C:\Windows\System32\drivers\etc\hosts
添加 192.168.0.31 www.ksidc31.cn
192.168.0.32 bbs.ksidc32.cn
3.不同端口
<VirtualHost *:80>
ServerAdmin root@localhost
DocumentRoot /var/www/html
ServerName www.ksidc.cn
ErrorLog logs/www-error_log
CustomLog logs/www-access_log common
</VirtualHost>
<VirtualHost *:81>
ServerAdmin root@localhost
DocumentRoot /var/www/html/bbs
ServerName bbs.ksidc.cn
ErrorLog logs/bbs_error_log
CustomLog logs/bbs-access_log common
</VirtualHost>
http主配置文件中添加81端口