设为首页 收藏本站
查看: 911|回复: 0

[经验分享] 8.Apache服务器

[复制链接]

尚未签到

发表于 2018-11-18 10:42:26 | 显示全部楼层 |阅读模式
  http//www.apache.org
  1、概述
  (1WEB服务器也称为WWWWORLD WIDE WEB,万维网)服务器,主要功能是提供
  网上信息浏览服务。
  (2)常用web服务器
  PHPhttpdApache)、nginx
  tomcatjsp+html
  winIIS
  客户端:IEfirefoxchrome、手机(浏览器)browser
  (3)端口
  [root@server1 Desktop]# vim /etc/services
  80http
  443https
  2、安装
   [root@server1 Desktop]# yum install -y httpd-y
  或:
  httpd-2.2.15-29.el6_4.x86_64.rpm         #apache服务的主程序包
  httpd-devel-2.2.15-29.el6_4.x86_64.rpm       #apache开发程序包
  httpd-manual-2.2.15-29.el6_4.noarch.rpm    #Apache手册文档
  [root@server1 Desktop]# yum install -yhttpd-devel
  如果在Xshell中检测apache服务,则需要安装以下软件包:
  [root@server1 Desktop]# yum install elinks –y       #安装字符界面下浏览器的客户端
  ##测试
  [root@server1 Desktop]# elinks192.168.18.129
  [root@server1 Desktop]# service httpd start
  [root@server1 Desktop]# netstat -antup |grep 80
  tcp       0      0 :::80               :::*           LISTEN     2624/httpd
  3、实战演练
  例1:搭建一台测试web服务器
  要求:部门内部搭建一台web服务器,采用的IP地址和端口为192.168.18.129:80,首页采用index.html文件。管理员E-mail地址为test@zhang.cn,网页编码类型采用UTF-8,网站资源存放在/var/www/html目录下,并将apache的配置文件根目录设置为/etc/httpd目录。
  (1)安装服务器
  [root@server1 Desktop]# yum install -yhttpd -y
  (2)编辑配置文件
  修改配置文件相关参数:
  57 ServerRoot "/etc/httpd"                   #apache配置文件的根目录
    70Timeout 60                                  #超时时间
   136Listen 80                                      #监听端口
   262ServerAdmin root@localhost          #设置管理员e-mail地址
   276ServerName 192.168.18.129:80    #服务器主机名
   292DocumentRoot "/var/www/html"#网站页面根目录
   302
   303    Options FollowSymLinks         #当一个目录没有默认首页时,允许显示此目录列表
   304    AllowOverride None
   305
   402DirectoryIndex index.html index.html.var      #指定默认首页
  [root@server1 ~]# service httpd restart
  #测试
   DSC0000.png
  
  #取消默认显示页面
  [root@server1 ~]# vim/etc/httpd/conf.d/welcome.conf
  将文件内容注释掉
  [root@server1 ~]# service httpd restart
  再次刷新网页,会出现以下界面:
   DSC0001.png
  
  #创建首页
  [root@server1 ~]# echo 'welcome towww.zhang.cn!' > /var/www/html/index.html
  [root@server1 ~]# service httpd restart
  再次刷新页面,出现以下界面:
   DSC0002.png
  
  例2:搭建LAMP环境
  [root@server1 ~]# yum install -y httpdmysql-server php php-mysql
  [root@server1 ~]# /etc/init.d/mysqld start
  #测试mysql
  [root@server1 ~]# mysql
  mysql> show databases;
  +--------------------+
  | Database           |
  +--------------------+
  | information_schema |
  | mysql              |
  | test               |
  +--------------------+
  mysql> exit
  #测试php
  [root@server1 ~]# cat/var/www/html/index.php
  
  [root@server1 ~]# /etc/init.d/httpd restart
   DSC0003.png
  
  例3:修改根目录及对应参数,设置访问权限
  [root@server1 ~]# cd /var/www/html/
  [root@server1 html]# mkdir bbs
  [root@server1 html]# cp -r /boot/grub/ bbs/
  [root@server1 html]# /etc/init.d/httpdrestart
  #测试
  [root@server1Desktop]# vim /etc/httpd/conf/httpd.conf
  292 DocumentRoot"/var/www/html/bbs"
  317                     #子目录会继承这个目录的属性
  331    Options Indexes FollowSymLinks              #目录浏览;可以用连接
  338    AllowOverride None
  343    Order allow,deny
  344    Allow from 192.168.18.0/24                      #从哪里来的允许
  345    #Deny from 192.168.18.0/24                    #从哪里来的拒绝
  346
  347
  #allowdeny都会读取,如果有冲突和未说明的时候按照order选项逗号后面的那个为准,谁写在后面,谁的优先级高。
  [root@server1 Desktop]# service httpd restart
DSC0004.png

  
  当第345行加上后,刷新后出现以下界面:
   DSC0005.png
  
  例4:别名,虚拟目录
  作用:引用网站根目录以外的网站
  [root@server1 Desktop]# vim/etc/httpd/conf/httpd.conf
   343     Order allow,deny
   344#    Allow from 192.168.18.0/24
   345#    Deny from 192.168.18.0/24
   563
   564    Options -Indexes FollowSymLinks
   565    AllowOverride None
   566    Order deny,allow
   567    Allow from 192.168.18.129
   568    Deny from all
   569
  [root@server1 Desktop]# mkdir/usr/local/phpmyadmin/
  [root@server1 Desktop]# cp/var/www/html/index.html /usr/local/phpmyadmin/
   [root@server1 Desktop]# /etc/init.d/httpdrestart
  #测试
   DSC0006.png
  
  例5:当一个目录下没有默认首页时,访问http://192.168.18.129/phpmyadmin/禁止显示默认目录列表
  (1)不安全情况
  [root@server1 Desktop]# cd/usr/local/phpmyadmin/
  [root@server1 phpmyadmin]# ls
  index.html
  [root@server1 phpmyadmin]# rm  -fr index.html
  [root@server1 phpmyadmin]# touch 1.html
  [root@server1 phpmyadmin]# cp -r/boot/grub/ /usr/local/phpmyadmin/
  [root@server1 phpmyadmin]# ls
  1.html grub
  [root@server1 phpmyadmin]# vim/etc/httpd/conf/httpd.conf
   563
   564    Options Indexes -FollowSymLinks
   565    AllowOverride None
   566    Order deny,allow
   567    Allow from 192.168.18.129
   568    Deny from all
   569
  [root@server1 phpmyadmin]#/etc/init.d/httpd restart
  #测试
   DSC0007.png
  
  (2)安全情况
   563
   564    Options -Indexes FollowSymLinks
   565    AllowOverride None
   566    Order deny,allow
   567    Allow from 192.168.18.129
   568    Deny from all
   569
  [root@server1 ~]# /etc/init.d/httpd restart
  #测试
   DSC0008.png
   DSC0009.png
  
  
  可以发现:-Indexes,表示目录下没有默认首页时,禁止显示目录
  例6:打开软连接功能,通过软连接直接引用网站根目录以外的内容
  [root@server1 ~]# mkdir /web2
  [root@server1 ~]# echo test1 >/web2/a.html
  [root@server1 ~]# ln -s /web2/ /var/www/html/web2
  [root@server1 ~]# vim/etc/httpd/conf/httpd.conf
  打开FollowSymLininks参数
  #测试
  http://192.168.18.129/
  会发现出现web2目录
  例7:通过用户认证的方式,对网站下/usr/local/phpmyadmin/目录进行保护。/usr/local/phpmyadmin/目录,只能通过用户名和密码的方式进行访问。
  恢复为以下配置:
[root@server1 ~]# vim /etc/httpd/conf/httpd.conf
   563
   564    Options Indexes FollowSymLinks
   565    AllowOverride None
   566    Order deny,allow
   567    Allow from all   
   568
  [root@server1 ~]# /etc/init.d/httpd restart
  #测试
   DSC00010.png
  
  方法一:
[root@server1 ~]# vim /etc/httpd/conf/httpd.conf
   DSC00011.png
  
  [root@server1 ~]# htpasswd -cm/etc/httpd/conf/passwd.secret tom
  New password:
  Re-type new password:
  Adding password for user tom
  [root@server1 ~]# htpasswd -m /etc/httpd/conf/passwd.secretbob
  New password:
  Re-type new password:
  Adding password for user bob
  [root@server1 ~]# cat/etc/httpd/conf/passwd.secret
  tom:$apr1$BAHUtWCb$Ctm2kg5DdXFZV2qPAPPR51
  bob:$apr1$7VX2sDiT$lq6kyWoiu/68aAH7P4Lb0/
  [root@server1 ~]# /etc/init.d/httpd restart
  #测试
   DSC00012.png
  
   DSC00013.png
  方法二:
  [root@server1 ~]# vim/etc/httpd/conf/httpd.conf
  [root@server1 ~]# vim/usr/local/phpmyadmin/.htaccess
  [root@server1 ~]# cat/usr/local/phpmyadmin/.htaccess
  authtype basic
  authname "hello world..."
  authuserfile /etc/httpd/conf/passwd.secret
  require valid-user
  [root@server1 ~]# htpasswd -cm/etc/httpd/passwd.secret tom
  New password:
  Re-type new password:
  Adding password for user tom
  [root@server1 ~]# htpasswd -m/etc/httpd/passwd.secret pop
  New password:
  Re-type new password:
  Adding password for user pop
  [root@server1 ~]# cat/etc/httpd/passwd.secret
  tom:$apr1$fQNh06Oc$53CTIqQ3PCnHY05VaBpuO.
  pop:$apr1$uRIwnTht$FRh1i3wIhgihustGMRyOI1
  [root@server1 ~]# service httpd restart
  #测试
DSC00014.png

  
  例8:配置apache虚拟主机,实现在一台服务器上运行多个网站
  Apache虚拟主机实现有三种方法:
  (1)通过不同的IP地址;
  (2)通过不同的域名;
  (3)通过不同的端口号;
  三种方法都需要打开虚拟主机功能
  1000 NameVirtualHost *:80
  方法1:通过不同的IP地址,解析不同域名
  [root@server1 ~]# ifconfig eth0:1192.168.18.220 netmask 255.255.255.0
  [root@server1 ~]# ls /var/www/html/bbs/
  grub
  [root@server1 ~]# echo 'bbs.zhang.cn' >/var/www/html/bbs/index.html
  [root@server1 ~]# ls /var/www/html/
  bbs index.html  index.php  rhel6.5 web2
  [root@server1 ~]# vim/etc/httpd/conf/httpd.conf
  1020
  1021    ServerAdmin webmaster@dummy-host.example.com
  1022    DocumentRoot /var/www/html/
  1023    ServerName dummy-host.example.com
  1024    ErrorLog logs/dummy-host.example.com-error_log
  1025    CustomLog logs/dummy-host.example.com-access_log common
  1026
  1027
  1028    ServerAdmin webmaster@dummy-host.example.com
  1029    DocumentRoot /var/www/html/bbs/
  1030    ServerName dummy-host.example.com
  1031    ErrorLog logs/dummy-host.example.com-error_log
  1032    CustomLog logs/dummy-host.example.com-access_log common
  1033
  [root@server1 ~]# /etc/init.d/httpd restart
  #测试
   DSC00015.png
  
  再访问192.168.18.220,会出现测试页面
  方法2:通过不同的域名解析同一个IP地址
  [root@server1 ~]# vim/etc/httpd/conf/httpd.conf
  1034
  1035    ServerAdmin webmaster@dummy-host.example.com
  1036    DocumentRoot /var/www/html/
  1037    ServerName www.example.com
  1038    ErrorLog logs/www.example.com-error_log
  1039    CustomLog logs/www.example.com-access_log common
  1040
  1041
  1042    ServerAdmin webmaster@dummy-host.example.com
  1043    DocumentRoot /var/www/html/bbs/
  1044    ServerName bbs.example.com
  1045    ErrorLog logs/bbs.example.com-error_log
  1046    CustomLog logs/bbs.example.com-access_log common
  1047
  [root@server1 ~]# vim /etc/hosts
  192.168.18.129 server1.example.com
  192.168.18.129www.example.com
  192.168.18.129bbs.example.com
  [root@server1 ~]# /etc/init.d/httpd restart
  #测试
  [root@server1 ~]# elinks 192.168.18.129
  [root@server1 ~]# elinks www.example.com
  [root@server1 ~]# elinks bbs.example.com
  方法3:基于端口配置虚拟主机
  [root@server1 ~]# vim/etc/httpd/conf/httpd.conf
  136 Listen 80
  137 Listen 81
  1034
  1035    ServerAdmin webmaster@dummy-host.example.com
  1036    DocumentRoot /var/www/html/
  1037    ServerName www.example.com
  1038     ErrorLog logs/www.example.com-error_log
  1039    CustomLog logs/www.example.com-access_log common
  1040
  1041
  1042    ServerAdmin webmaster@dummy-host.example.com
  1043    DocumentRoot /var/www/html/bbs/
  1044    ServerName bbs.example.com
  1045    ErrorLog logs/bbs.example.com-error_log
  1046    CustomLog logs/bbs.example.com-access_log common
  1047
  [root@server1 ~]# /etc/init.d/httpd restart
  #测试
  http://192.168.18.129/
  http://192.168.18.129:81/
  





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-636502-1-1.html 上篇帖子: WDCP V3 安装mod 下篇帖子: apache配置文件httpd.conf详解
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表