虚拟主机,也叫“网站空间”,就是把一台运行在互联网上的服务器划分成多个“虚拟”的服务器
Indexes 的作用就是当该目录下没有 index.html 文件时,就显示目录结构,去掉 Indexes,Apache 就不会显示该目录的列表了
CGI是在HTTP服务器下运行外部程序(或网关)的一个接口,它能让网络用户访问远程系统上的使用类型程序
.htaccess文件(或者"分布式配置文件" )是Apache服务器中的一个配置文件,设置对目录的访问控制和用户认证,可以覆盖http.conf,不需重启,放置在index目录
先删除原有访问控制参数,allowoverride all启用覆盖
Order:控制在访问时Allow和Deny两个访问规则哪个优先
目录modules需要的模块
htdocs资源位置 conf配置文件
http.conf主配置文件
多处理模块(MPM)
效率高,内存占用大prefork
# StartServers: 数量的服务器进程开始
# MinSpareServers: 最小数量的服务器进程,保存备用
# MaxSpareServers: 最大数量的服务器进程,保存备用
# MaxRequestWorkers: 允许开始的最大数量的服务器进程
# MaxConnectionsPerChild: 一个服务器进程服务的最大连接数
MaxRequestWorkers 设置了同时连入的clients最大总数。maxclient
worker内存占用小,适合高流量
# StartServers: 初始数量的服务器进程开始
# MinSpareThreads: 最小数量的工作线程,保存备用
# MaxSpareThreads: 最大数量的工作线程,保存备用
# ThreadsPerChild: 在每个服务器进程的固定数量的工作线程
# MaxRequestWorkers: 最大数量的工作线程
# MaxConnectionsPerChild: 最大连接数的一个服务器进程服务
MaxRequestWorkers 必须是ThreadsPerChild的整数倍
安装:
openssl ./config --prefix=/usr/local/ssl --shared
1echo /usr/local/ssl/lib/ >>/etc/ld.so.conf ldconfig
2import LD_LIBRARY_PATH=/....../ssl/lib:$LD_LIBRARY_PATH:.
3ln -s /usr/local/ssl/bin/openssl /usr/local/bin/openssl
a:解决apr not found问题>>>>>>
[root@xt test]# tar -zxf apr-1.4.5.tar.gz [root@xt apr-1.4.5]# ./configure --prefix=/usr/local/apr cannot remove libtoolT 将这行代码注释掉 # $RM "$cfgfile"
b:解决APR-util not found问题>>>>
[root@xt test]# tar -zxf apr-util-1.3.12.tar.gz [root@xt apr-util-1.3.12]# ./configure --prefix=/usr/local/apr-util -with- apr=/usr/local/apr/bin/apr-1-config c:解决pcre问题>>>>>>>>> 不能用pcre2--with-apr=/usr/local/apr \--with-apr-util=/usr/local/apr-util/ \ --with-pcre=/usr/local/pcre[root@xt test]#unzip -o pcre-8.10.zip [root@xt pcre-8.10]#./configure --prefix=/usr/local/pcre.最后编译Apache时加上:
wget http://apache.freelamp.com/apr/apr-1.4.2.tar.gz 下载apr
./configure --prefix=//apache --with-apr-util=//apr-util/ --with-pcre=//pcre/ --enable-so --enable-rewrite --enable-ssl --with-mpm=(prefork|worker)
--enable-nonportable-atomics=yes events模式
--enable-shared指编译后会链接成共享对象(.so文件--enable-so \ #让apache核心装载DSO 主要是用来运行时动态加载模块,而不用每次都要重新编译Tengine.mv httpd httpd.prefork
虚拟主机:
IP:1.先添加eth0:x 192.168.1.?
2.、/etc/hosts 添加IP和主机名
3. 建立存放网页的根目录及index.html文件
4. 在http.conf添加 listen ip:端口
5. include conf/vhost/*.conf 相应的配置文件
www.test1conf
<VirtualHost ip:端口>
ServerName www.test1.com
DucumentRoot index文件目录
<Directory "/mnt/web/clusting">
Options FollowSymLinks
AllowOverride None
AuthType basic
Authname "oa"
AuthUserFile /usr/.../users.list
require valid-user
Order deny,allow
deny from all
allow from 192.168.1.x
</Directory>
认证口令
AuthName "域名称" AuthType basic/digest类型
AuthUserFile 文件 Require user 用户名
Require valid-user授权给列表中的用户
htpasswd -c /usrl/local/apache2/conf/user.list
-c表示创建文件 删除用户就直接修改文件