WWW服务器:
Linux发行版:RHEL6
WWW:即万维网,也直接被称为Web,实际上是指一张由各种网页所构成的,网页间互相通过链接连接在一起的“网”。即:www中网络的概念指的是由信息内容所构成的网络。
互联网:指由各种网络主机和设备所组成,并且通过TCP/IP协议通信的计算机网络。
网站:一组在URL中具有同一域名的网页及其网络资源。
URL格式————协议://主机名或IP地址:端口/访问路径?查询字符串#片段名
守护进程httpd监听80端口(用于http通信)和443端口(用于https通信)。
http请求方法:GET方法,POST方法,OPTIONS方法,HEAD方法,DELETE方法等。
----------------------------------------------------------------------------------------------------------------------------
Apache HTTP服务器是被广泛使用的www服务器。
rpm -qa | grep httpd
yum install httpd
#Apache服务器手册: http://httpd.apache.org/docs/2.2/zh-cn/
#手册httpd-manual已安装的存放位置: /var/www/manual
iptables -L INPUT #设置防火墙
#网站内容默认存储位置/var/www/html
#本地浏览 http://localhost
sudo service httpd start #启动Apache http服务
---------------------------------------------------------------------------------------------------------------------
#重要目录
1)配置管理类:
/etc/httpd目录。/etc/httpd/conf/httpd.conf文件--是Apache Http服务器的主要配置文件。
2)网站内容类:
默认目录/var/www
/var/www/html/--默认网站内容的根位置。
/var/www/error/--存放显示错误信息的网页
/var/www/icons/--用于存放服务器自带的网页图标
/var/www/usage/:服务器运行情况存放目录
/var/www/manual:服务器手册
/var/www/cgi-bin:CGI程序存放目录
3)日志类:
默认目录/var/log/httpd下存放http和https的访问日志、错误日志。
/var/log/httpd/access_log/ssl_access_log存放访问日志
/var/log/httpd/error_log/ssl_access_log存放错误日志
----------------------------------------------------------------------------------------------------------------------
#配置:
/etc/httpd/conf/httpd.conf文件
分为全局环境、主服务器配置、虚拟主机。
(1)全局环境配置:
1.ServiceTokens OS:是否允许在响应客户端的消息中包含服务器及操作系统版本等信息。
2.ServerRoot "/etc/httpd":服务器的顶级目录。
3.PidFile run/httpd.pid:服务器记录httpd守护进程PID的文件,实际绝对路径为/etc/httpd/run/httpd.pid
4.Timeout 60:服务器在60秒内未与客户端通信则断开连接
5.KeepAlive Off:服务器是否允许与客户端建立持续连接
6.MaxKeepAliveRequests 100:允许建立的最大持续连接数
7.KeepAliveTimeout 15:服务器如果在15秒内等待不到持续连接的下一次HTTp请求,则将该连接断开。
8.Listen 80:服务器默认监听端口
等等
(2)主服务器配置:
httpd.conf文件
ServerAdmin root@localhost:服务器管理员邮箱
ServerName www.example.com:80:标识服务器名称及端口
UseCanonicalName Off:服务器是否使用ServerName参数所设置的服务器名称来生成指向自己的URL
DocumentRoot "/var/www/html":网站内容根目录
DirectoryIndex index.html index.html.var index.htm:设置每个目录默认显示的文件内容。
(3)针对目录访问控制:
httpd.conf文件
<Directory 目录路径>
访问控制命令
</Directory>
#访问控制命令:
Options:
FollowSymLinks可使用符号链接文件
Indexes显示目录索引
AllowOverride:
None不允许覆盖
Limit允许被访问控制的设置所覆盖
All总是允许被覆盖
Order:
allow,deny
deny,allow
实例:
<Directory "/var/www/html">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
#Deny from IP地址
</Directory>
(4)针对HTTP请求方法的访问控制:
<Limit 方法列表>
访问控制指令
</Limit>
<LimitExcept 方法列表>
访问控制指令
</LimitExcept>
(5)用户身份认证:httpd.conf文件
AllowOverride AuthConfig
#####################命令行
htpasswd 【选项】 密码文件路径 用户账号名
-c:创建密码文件 #如,/var/www/testuser.passwd
-m:指定使用MD5算法加密
-D:删除命令中指定的用户账号
========================httpd.conf文件
身份认证指令,针对基本认证方式:
AuthType:用于确定验证类型
AuthName:用于标识授权范围
AuthUserFile:用于确定密码文件的所在位置
Require user:用于确定哪些认证用户能够访问目录资源
实例【1】:
<Directory "/var/www/html">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
#Deny from IP地址
AuthType Basic
AuthName "Test User"
AuthUserFile /var/www/testuser.passwd
Require user apache
</Directory>
实例【2】:保存在.htaccess文件
AuthType Basic
AuthName "Test User"
AuthUserFile /var/www/testuser.passwd
Require user apache
补充:
一、Ubuntu下(Linux)phpmyadmin的部署:
方法1:安装部署 :
在终端bash中,输入 sudo apt-get install phpmyadmin
phpmyadmin安装在/etc/phpmyadmin目录下
然后cd /etc/apache2 #进入apache2安装目录
sudo vim ./apache2.conf
在文件末尾追加Include /etc/phpmyadmin/apache.conf
在配置文件中添加这句话,因为在安装的时候phpmyadmin为我们做好了配置文件,现在只需要包含进来即可
sudo service apache2 restart #修改配置文件之后,只有重新启动服务才能生效
方法2:下载源码压缩包部署:
用浏览器进入https://www.phpmyadmin.net/downloads/ #挑选个压缩包文件进行下载
【步骤】,如:在Linux终端用wget https://files.phpmyadmin.net/phpMyAdmin/4.7.4/phpMyAdmin-4.7.4-all-languages.zip 在线下载多国语言版
然后终端下,unzip phpMyAdmin-4.7.4-all-languages.zip #没有unzip的,先安装unzip: sudo apt-get install unzip
sudo cp -r ./phpMyAdmin-4.7.4-all-languages /var/www/html/phpMyAdmin474 #我们放到一个可被web访问到的目录下,后续方便管理
sudo service apache2 restart
sudo service mysql restart