Linux Web
1、rpm包方式的web
    1.1 安装
    1.2 配置
        1.2.1 虚拟主机
    1.3 集成php,mysql
    1.4 集成ftp服务
2、源码编译的web
    2.1 安装
    2.2 配置
        2.2.1 虚拟主机
    2.3 集成php,mysql
    2.4 集成ftp服务
----------------
1、安装系统(rpm包方式的)
分区方案(硬盘为80G)
    /boot    200M
    /    10G
    swap    2G
    /home    剩余所有的
*/home里面是给用户所使用的空间,以后虚拟主机都开这里

选择万维网服务器---现在自定义
添加ftp服务,nfs服务,电子邮件服务,网络基础设施服务器中添加bind三个
进行安装
*DNS如果单独做了服务器了。就不用装了

安装完成后要做的
1、配置ip
    setup里面配置
2、关闭防火墙
    setup里面关闭
3、关闭SELinux
    vi /etc/selinux/config
    改
    SELINUX=disabled
4、重启
------------------------------------

进入系统,启动httpd服务并测试
测试出现测试页面证明apache装好了
------------------------------------
apache 的配置文件
/etc/httpd/conf/httpd.conf #主配置文件
/etc/httpd/conf.d    #扩展配置文件存放的目录
manual.conf #帮助手册配置(建议关闭)
php.conf #php配置
ssl.conf #ssl加密访问配置
welcome.conf #欢迎页面配置
perl.conf #perl配置
webalizer.conf #日志分析配置
wsgi.conf #wsgi支持

/etc/httpd/conf/httpd.conf #配置文件部分内容说明
ServerTokens OS
ServerRoot "/etc/httpd" #httpd的主要文件存放目录
PidFile run/httpd.pid #运行文件位置
Timeout 60 #客户连接超时时间为60秒

#保活访问
KeepAlive On #改为打开
MaxKeepAliveRequests 100 #每个ip最多的连接是100个
KeepAliveTimeout 15 #每个最长时间是15秒


连接数控制
<IfModule prefork.c> #进程方式控制
StartServers       8 #打开几个服务进程
MinSpareServers    5 #最小5个
MaxSpareServers   20 #最大20个
ServerLimit      256 #上限是256个
MaxClients       256 #每个最多连接客户端数量
MaxRequestsPerChild  4000 #每个最多的请求数是4000
</IfModule>


<IfModule worker.c> #线程方式
StartServers         4 #4个服务端
MaxClients         300 #每线程最多300
MinSpareThreads     25 #最小线程是25个
MaxSpareThreads     75 #最多线程是75
ThreadsPerChild     25 #默认为25
MaxRequestsPerChild  0 #最大请求无限制
</IfModule>

Listen 80 #服务器监听端口默认为80

#拓展模块。自己查
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule auth_digest_module modules/mod_auth_digest.so
...

Include conf.d/*.conf #扩展的配置文件

User apache #apache的用户身份
Group apache #apache的组身份

ServerAdmin root@localhost #服务器管理员的邮件地址

UseCanonicalName Off #没用的

DocumentRoot "/var/www/html" #默认站点页面存放目录

<Directory /> #网站/目录的权限
    Options FollowSymLinks #支持连接
    AllowOverride None
</Directory>


<Directory "/var/www/html"> #默认站点页面存放目录权限
    Options Indexes FollowSymLinks #站点索引,支持连接
    AllowOverride None    #访问控制
    Order allow,deny #先允许再拒绝
    Allow from all #允许所有
#    Deny from ip #拒绝某个ip的访问
</Directory>

<IfModule mod_userdir.c> #个人主页支持
    UserDir disabled
</IfModule>

DirectoryIndex index.html index.html.var #目录索引页面名称


#访问控制文件.htaccess功能
AccessFileName .htaccess

<Files ~ "^\.ht">
    Order allow,deny
    Deny from all
    Satisfy All
</Files>

AddDefaultCharset UTF-8 #默认页面编码为UTF-8

----------------------------------------------
添加ServerName web1.amao.com
1、个人主页支持“http://ip/~用户名”访问个人主页
a、修改配置文件,支持这种访问
vi /etc/httpd/conf/httpd.conf
找到
<IfModule mod_userdir.c>
    #
    # UserDir is disabled by default since it can confirm the presence
    # of a username on the system (depending on home directory
    # permissions).
    #
    UserDir disabled #去掉某个用户的访问

    #
    # To enable requests to /~user/ to serve the user's public_html
    # directory, remove the "UserDir disabled" line above, and uncomment
    # the following line instead:
    #
    #UserDir public_html #用户的默认页面的目录

</IfModule>
修改为
<IfModule mod_userdir.c>
    #
    # UserDir is disabled by default since it can confirm the presence
    # of a username on the system (depending on home directory
    # permissions).
    #
    UserDir disabled root

    #
    # To enable requests to /~user/ to serve the user's public_html
    # directory, remove the "UserDir disabled" line above, and uncomment
    # the following line instead:
    #
    UserDir public_html

</IfModule>

去掉下列内容前面的#号,并在Indexes前面加“-”号
<Directory /home/*/public_html>
    AllowOverride FileInfo AuthConfig Limit
    Options MultiViews -Indexes SymLinksIfOwnerMatch IncludesNoExec
    <Limit GET POST OPTIONS>
        Order allow,deny
        Allow from all
    </Limit>
    <LimitExcept GET POST OPTIONS>
        Order deny,allow
        Deny from all
    </LimitExcept>
</Directory>


b、添加用户,并建立个人主页的目录
adduser test #添加用户
cd /home/test
mkdir public_html #在用户目录里面建立个人主页使用的目录
chown test.test public_html #配置个人主页使用的目录的权限
chmod o+x /home/test #给用户主目录添加其他用户列出权限(不加就打不开)
cd /home/test/public_html
echo "test" > index.html
c、重启服务并测试
service httpd restart

浏览器输入http://ip/~test测试
--------------------------------------------------------------------
基于名称的虚拟主机(重点)
1、做DNS
vi /etc/named.conf
改3个any
vi /etc/named.rfc1912.zones
添加
zone "amao.com" {
        type master;
        file "amao.com.hosts";
};
-----------------
cd /var/named/
cp named.localhost amao.com.hosts
vi amao.com.hosts
添加
www     IN      A       你的web服务器的ip
---------
chown root.named amao.com.hosts   
service named restart
---------------------------------------------
再添加个agou.com的域名
2、在apache的配置文件中添加虚拟主机(先把个人主页做出了再做这个)
vi /etc/httpd/conf/httpd.conf
在文件最后添加
NameVirtualHost 192.168.100.1 #名称虚拟主机开在那个ip上
NameVirtualHost 192.168.100.1
<VirtualHost 192.168.100.1>
        ServerName www.amao.com
        DocumentRoot /home/amao/public_html
</VirtualHost>

<VirtualHost 192.168.100.1>
        ServerName www.agou.com
        DocumentRoot /home/agou/public_html
</VirtualHost>
3、建立amao用户,agou用户,做法和个人主页做法一样
4、重启服务,浏览器输入
http://www.amao.com
http://www.agou.com
测试