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

[经验分享] Apache安装配置管理

[复制链接]

尚未签到

发表于 2018-11-23 06:49:57 | 显示全部楼层 |阅读模式
  一、安装Apache
  下载地址:http://httpd.apache.org/
  1. 安装Apache
  # tar  zxvf  httpd-2.2.11.tar.gz
  # cd  httpd-2.2.11
  # ./configure  --prefix=/usr/local/apache  --enable-so
  //编译时加上加载模块参数--enable-so
  # make
  # make  install
  2. 配置系统启动时自动启动Apache服务。
  # vi  /etc/rc.d/rc.local
  //在rc.local上加入一行/usr/local/apache/bin/apachectl –k  start。
  二、配置Apache
  1. 修改httpd.conf文件
  # vi  /usr/local/apache/conf/httpd.conf
  1) 设置根目录的路径
  根目录是指Apache存放配置文件和日志文件的目录,配置参数为ServerRoot,默认位于“/usr/local/apache”。命令如下:
  2) 设置监听IP地址及端口号
  默认侦听本机所有IP地址的TCP80端口,命令如下:
  Listen 80
  用户也可以按自己的需求,使用多个Listen语句在多个地址和端口上侦听客户端请求。比如:
  Listen 192.168.99.9:80
  Listen 172.16.0.20:8080
  3) 设置系统管理员E-mail
  使用ServerAdmin参数设置管理员E-mail,比如管理员的Email地址为root@guoxuemin.cn
  4) 设置服务器主机的名称
  参数ServerName用来设置服务器的主机名称,如果没有域名则填入服务器的IP地址,比如服务器的IP地址为192.168.99.9:
  5) 设置主目录的路径
  用户可以使用参数DocumentRoot配置服务器主目录默认路径,比如,主目录路径为:/usr/local/apache2/htdocs
  6) 设置默认文件
  Apache的默认文件名为index.html,可以使用Directory Index参数来配置,比如,将index.php设置为默认文件名:index.php index.html
  7)测试:
  打开浏览器,输入地址:http://192.168.99.9,可以打开站点了:
  2. 配置目录权限
  使用和设置目录的权限。比如:
  
  Options  Indexes  MultiViews
  AllowOverride  None
  Order  allow,deny
  Allow  from  all
  
  说明:
  1)定义目录特性选项Options
  可选参数:
  Indexes:该特性表明目录允许“目录浏览”;
  MultiViews:该特性表明目录允许内容协商的多重试图;
  All:包含了除MultiViews外的所有特性;
  ExecCGI:该特性表明允许在该目录下执行CGI脚本;
  FollowSymLinks:该特性表明允许在该目录下使用符号连接。
  2).htaccess文件
  可以通过.htaccess文件(访问控制文件)设置目录的权限。
  AccessFileName  .htaccess
  配置参数AllowOverride指定目录的.htaccess文件中指令的类型,包括All、None与Options、FileInfo、AuthConfig、Limit的任意组合。一般将AllowOverride设置为“None”,禁止使用.htaccess文件,当AllowOverride参数为All时,.htaccess文件可以覆盖任何以前的配置。
  3)设置访问控制
  使用Order选项来定义访问权限。
  比如以下语句表明允许所有客户机的访问:
  Order  allow,deny
  Allow  from  all
  以下语句表明只允许网段192.168.99.0/24的客户机访问,但IP地址为192.168.99.254这个客户机除外:
  Order  allow,deny
  Allow from  192.168.99.0/24
  Deny from  192.168.99.254
  用户可以根据需要,按上述方法配置自己的目录权限。
  3. 创建虚拟目录
  使用Alias选项创建虚拟目录,比如,建立“/icons/”这个虚拟目录,其对应的物理路径为“/var/www/icons/”:
  Alias  /icons/  “/var/www/icons/”
  4. 用户认证
  比如,有一个名为myweb的虚拟目录,其对应的物理路径是“/usr/local/myweb”,现对其启用用户认证功能,只允许用户Tonyguo和Wayne访问。
  1)建立虚拟目录并设置用户认证:
  Alias /myweb/ “/usr/local/myweb/”
  
  Options  none
  AllowOverride  None
  Order  allow,deny
  Allow  from  all
  AuthType Basic
  AuthName “Please Login: ”
  AuthUserFile/usr/local/apache/bin/mywebpwd
  Require User Tongguo wayne
  
  2) 建立口令文件并为用户设置口令
  /usr/local/apache/bin/htpasswd –c /usr/local/apache/bin/mywebpwd Tonyguo
  -c选项表示无论口令文件是否已经存在,都会重新写入文件并删除原内容。所以第二个用户wayne不需要使用-c选项
  3)测试
  在浏览器中输入:http://192.168.99.9/myweb,可以看到如下对话框:
  输入用户名和密码后就可以访问网站了:
  三、配置虚拟主机
  1. 配置基于IP的虚拟主机
  1)IP地址相同,但端口号不同的虚拟主机配置
  比如使用192.168.99.9的两个不同端口80和8080发布两个不同站点, 虚拟主机分别对应的目录为/usr/local/apache/htdocs/web1和/usr/local/apache/htdocs/web2:
  Listen 80
  Listen 8080
  
  ServerSignature  email
  DocumentRoot  /usr/local/apache/htdocs/web1
  DirectoryIndex  index.html  index.htm
  LogLevel  warm
  HostNameLookups  off
  
  
  ServerSignature  email
  DocumentRoot  /usr/local/apache/htdocs/web2
  DirectoryIndex  index.html  index.htm
  LogLevel  warm
  HostNameLookups  off
  
  2)端口相同,ip不同的虚拟主机配置
  比如服务器有两个IP地址192.168.99.9和192.168.99.10,使用这两个IP创建两台虚拟主机,虚拟主机分别对应的目录为/usr/local/apache/htdocs/web1和/usr/local/apache/htdocs/web2。设置方法如下:
  
  ServerName  192.168.99.9:80
  DocumentRoot  /usr/local/apache/htdocs/web1
  DirectoryIndex  index.html  index.htm
  
  
  ServerName  192.168.99.10:80
  DocumentRoot  /usr/local/apache/htdocs/web2
  DirectoryIndex  index.html  index.htm
  
  2. 配置基于域名的虚拟主机
  比如有两个域名guoxuemin.cn和tonyguo.com需要使用同一台服务器192.168.99.9,那么可以这样配置:
  NameVirtualHost  192.168.99.9
  
  ServerName  www.guoxuemin.cn:80
  ServerAdmin  admin@guoxuemin.cn
  DocumentRoot  /usr/local/apache/htdocs/web1
  DirectoryIndex  index.html  index.htm
  ErrorLog  logs/web1/error_log
  Customlog  logs/web1/access_log  combined
  
  
  ServerName   www.tonyguo.com:80
  ServerAdmin  admin@tonyguo.com
  DocumentRoot  /usr/local/apache/htdocs/web2
  DirectoryIndex  index.html  index.htm
  ErrorLog  logs/web1/error_log
  Customlog  logs/web1/access_log  combined
  
  
  serverAdmin new@student.com
  DocumentRoot "/web/web1"
  
  Options FollowSymlinks
  AllowOverride None
  Order Allow,Deny
  Allow from all
  
  DirectoryIndex index.html index.php index.htm
  
  
  serverAdmin new@student.com
  DocumentRoot "/web/web2"
  
  Options FollowSymlinks
  AllowOverride None
  Order Allow,Deny
  Allow from all
  
  DirectoryIndex index.html index.php index.htm
  
  
  serverAdmin new@student.com
  DocumentRoot "/web/web3"
  
  Options FollowSymlinks
  AllowOverride None
  Order Allow,Deny
  Allow from all
  
  DirectoryIndex index.html index.php index.htm
  
  
  serverAdmin new@student.com
  DocumentRoot "/web/web4"
  
  Options FollowSymlinks
  AllowOverride None
  Order Allow,Deny
  Allow from all
  
  DirectoryIndex index.html index.php index.htm
  
  
  ServerName ftp.com:80
  DocumentRoot /web/ftp
  
  Options FollowSymlinks
  AllowOverride None
  Order Allow,Deny
  Allow from all
  
  DirectoryIndex index.html index.php index.htm
  
  
  ServerName mail.com:80
  DocumentRoot /web/mail
  
  Options FollowSymlinks
  AllowOverride None
  Order Allow,Deny
  Allow from all
  
  DirectoryIndex index.html index.php index.htm
  
  负载均衡
  #访问test目录时负载均衡
  在modules目录下:导入mod
  /usr/local/apache2/bin/apxs -c -i mod_proxy.c proxy_util.c
  /usr/local/apache2/bin/apxs -c -i mod_proxy_balancer.c
  /usr/local/apache2/bin/apxs -c -i  mod_proxy_http.c
  vi http.conf
  LoadModule proxy_module            modules/mod_proxy.so
  LoadModule proxy_balancer_module   modules/mod_proxy_balancer.so
  LoadModule proxy_http_module       modules/mod_proxy_http.so
  ProxyRequests Off
  
  BalancerMember http://192.168.88.134:8089  loadfactor=5
  BalancerMember http://192.168.88.134:8088  loadfactor=1
  #weight
  ProxySet lbmethod=bytraffic
  
  ProxyPass /test balancer://clusterphpinfo stickysession=STICK_PORT_TOKEN nofailover=On
  ProxyPa***everse /test balancer://clusterphpinfo
  
  SetHandler balancer-manager
  Order Deny,Allow
  Allow from all
  #Allow from 192.168.88.*
  


运维网声明 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-638373-1-1.html 上篇帖子: win7(32/64)+php5.5+apache2.4+mysql5.6 搭建 下篇帖子: LINUX+APACHE+PHP+BDB+OPENLDAP+PHPLDAPADMIN安装配置
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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