linux下apache部署_linux上部署了apache后怎么把开发的程序部署上去 - CSDN
  • Apache服务的安装 yum源安装: 目录文件 源码包安装: 目录文件: Apache中添加对php的支持 Apache中添加php对mysql数据库的支持 Apache服务的高级配置 1:配置基于ip的虚拟主机 2. 配置基于端口的虚拟主机...

    目录

    Apache服务的安装

    yum源安装:

    目录文件

    源码包安装:

    目录文件:

    Apache中添加对php的支持

    Apache中添加php对mysql数据库的支持

    Apache服务的高级配置

    1:配置基于ip的虚拟主机

    2. 配置基于端口的虚拟主机

    3.配置基于域名的虚拟主机

    HTTP服务的访问控制

    基于ip的用户访问控制的配置:

    基于用户身份认证授权的配置:


    Apache 是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将Perl/Python等解析器编译到服务器中。但是Apache有一个缺点就是,重新加载配置文件时需要重启 httpd 服务,而nginx重载配置文件时只需重载reload配置文件即可。httpd服务默认监听 tcp / 80 端口

    apache有两个日志文件,access.log记录了访问网站的日志;error.log记录了错误日志

    Apache服务的安装

    yum源安装:

    1. 安装httpd主程序:  yum  -y  install  httpd
    2. 在/var/www/html 目录下写入我们自己的主页 index.html
    3. 开启httpd程序: systemctl  start httpd
    4. 防火墙开放http服务  firewall-cmd  --add-service=http ,关闭SElinux: setenforce=0
    5. 查看apache版本号:httpd -v

    目录文件

    • 程序目录:/usr/sbin/httpd
    • 默认网站主页存放目录: /var/www/html/
    • 日志文件存放目录:/var/log/httpd/
    • 主配置文件:/etc/httpd/conf/httpd.conf
    • 从配置文件:/etc/httpd/conf.d/

    主配置文件 /etc/httpd/conf/httpd.conf 的一些参数的意义

    ServerRoot “/etc/httpd“                        //服务配置文件目录
    PidFile run/httpd.pid		                   //PID文件
    Listen 80			                           //默认监听端口
    Include conf.modules.d/*.conf		           //包含模块目录的配置文件
    User apache			                           //启动用户
    Group apache		        	               //启动组
    ServerAdmin root@localhost	                   //管理员邮箱
    ServerName www.example.com:80	               //域名主机名
    DocumentRoot “/var/www/html“	               //默认主页存放目录
    DirectoryIndex index.html index.html.var	   //索引文件
    <Directory "/var/www">                         //规定网站根目录的位置
        AllowOverride None
        # Allow open access:
        Require all granted
    </Directory>
    ErrorLog logs/error_log			               //错误日志
    CustomLog logs/access_log combined	           //访问日志
    AddDefaultCharset UTF-8                        //默认字符集
    IncludeOptional conf.d/*.conf                  //包含了 conf.d/*.conf 的配置文件
    
    <IfModule dir_module>
        DirectoryIndex index.html                  //默认索引
    </IfModule>

     扩展配置文件: /etc/httpd/conf.d/   , 我们可以在这个目录下新建一些我们自己定义的配置文件,比如基于ip的虚拟主机,基于端口的虚拟主机,基于域名的虚拟主机等等

    源码包安装:

    1. 源码安装之前先安装编译工具: yum  -y  install  gcc  gcc-c++  make 
    2. 源码包: httpd-xxxx.tar.bz2
    3. 解压,然后进入解压目录, ./configure 编译, make && make install  安装即可 
    4. 进入安装目录的 bin 目录下, ./httpd 启动

    目录文件:

    安装完成后,软件默认安装在  /usr/loca/apache2/  下面,也可以编译的时候自定义安装目录

    • 可执行文件目录:/usr/local/apache2/bin/
    • 网站主页目录:/usr/local/apache2/htdocs/
    • 配置文件目录:/usr/local/apache2/conf/
    • 日志文件目录:/usr/local/apache2/logs/

    Apache中添加对php的支持

    安装php的支持包    yum  -y  install   php ,然后重启 httpd 服务即可

    如果想让Apache识别默认的index.php文件,需要修改配置文件 /etc/httpd/conf/httpd.conf 中,在如下位置加入 index.php  

    <IfModule dir_module>
        DirectoryIndex index.php index.html
    </IfModule>

    Apache中添加php对mysql数据库的支持

    安装php-mysql的包即可:yum  -y  install php-mysql  

    Apache服务的高级配置

    以下不管是基于ip、端口还是基于域名创建的虚拟主机,网站主页目录只能在 /var/www/ 下,如果想更改到其他的任意目录的话,需要修改配置文件  /etc/httpd/conf/httpd.conf

    <Directory "/var/www">        //这里的目录更改为你的网站主页目录
        AllowOverride None
        # Allow open access:
        Require all granted
    </Directory>
    

    1:配置基于ip的虚拟主机


    可以在一台服务器上配置多个网卡,也可以在一块网卡上配置爱多个ip
    我这里在一块网上上配置多个ip:   ifconfig  eno16777736:1   10.96.10.204

    然后在从配置文件中  /etc/httpd/conf.d/   下创建一个配置文件,我们新建一个 ip.conf 文件,然后加入下面几行

    <VirtualHost 10.96.10.203>
            DocumentRoot /var/www/html/web1     //第一个ip的网站的主页面目录
    </VirtualHost>
    <VirtualHost 10.96.10.204>
            DocumentRoot /var/www/html/web2    //第二个ip的网站的主页面目录
    </VirtualHost>

    然后在/var/www 下新建 web1和web2目录,在web1和web2目录里面分别放入我们的网站页面。然后重启httpd服务即可。

    2. 配置基于端口的虚拟主机

    在配置文件中  /etc/httpd/conf.d/   下创建一个配置文件,我们新建一个 port.conf 文件,然后加入下面几行

    Listen 8080
    <VirtualHost *:80>
            DocumentRoot  /var/www/html/web1      //第一个端口的网站主目录
    </VirtualHost>
    <VirtualHost *:8080>
            DocumentRoot  /var/www/html/web2      //第二个端口的网站主目录
    </VirtualHost>
    

    然后在/var/www 下新建 web1和web2目录,在web1和web2目录里面分别放入我们的网站页面。然后重启httpd服务即可。

    3.配置基于域名的虚拟主机

    在配置文件中  /etc/httpd/conf.d/   下创建一个配置文件,我们新建一个 domain.conf 文件,然后加入下面几行

    NameVirtualHost *:80
    <VirtualHost *:80>
            DocumentRoot /var/www/web1     //第一个域名的网站主目录
            ServerName web1.xie.com
    </VirtualHost>
    <VirtualHost *:80>
            DocumentRoot /var/www/web2    //第二个域名的网站主目录
            ServerName web2.xie.com
    </VirtualHost>
    

    然后在/var/www 下新建 web1和web2目录,在里面放入我们的网站页面。然后再重启httpd服务即可。

    HTTP服务的访问控制

    控制对特定主页内容的访问,为相应网站目录添加访问控制
    常用访问控制方式分类:

    • 客户机地址限制
    • 用户授权限制

    设置客户机地址访问

    • Order配置项,定义控制顺序 Order allow,deny 先允许后拒绝,默认拒绝 Order deny,allow 先拒绝后允许,默认允许
    • Allow、Deny配置项,设置允许或拒绝的网段或地址 Deny from IP地址 或者 网段 Allow from IP地址 或者 网段

    基于ip的用户访问控制的配置:

    在配置文件中  /etc/httpd/conf.d/   下创建一个配置文件,我们新建一个 ip.conf 文件,然后加入下面几行

    // 这个的意思的允许所有用户访问/var/www/html 目录下的网页,但是只允许 10.96.10.204/24这个网段的访问 /var/www/html/test/ 目录下的网页
    <VirtualHost 10.96.10.203>        //本机ip
    DocumentRoot /var/www/html        //网站主页的目录
    <Directory /var/www/html/test>         //要设置限制的目录
    Order allow,deny                  //匹配了允许的就拒绝所有
    Allow from 10.96.10.204/24        //只允许10.96.10.204这个地址访问
    </Directory>
    </VirtualHost>

    基于用户身份认证授权的配置:

    访问控制的配置

    • 在配置文件中  /etc/httpd/conf.d/   下创建一个配置文件,我们新建一个auth.conf 文件,然后加入下面几行
    • htpasswd  -c   /etc/httpd/webpasswd    tom (第一次加 -c 参数,表示创建文件);   htpasswd  /etc/httpd/webpasswd  jack(第二次不用加 -c参数 ,因为文件已经创建)
    • 重启服务验证
    <VirtualHost 10.96.10.203>           //本机ip 
    DocumentRoot /var/www/html           //主页目录
    <Directory /var/www/html/test>       //设置认证的目录
    AuthType Basic                       //认证的方法:密码
    AuthName Password!                   //弹出登录框
    AuthUserFile /etc/httpd/webpasswd   //用户名和密码保存的文件
    require user tom  jack              //只允许 tom 和 jack 用户访问
    </Directory>
    </VirtualHost>        

    相关文章: Linux中Nginx服务器的部署和配置

                       Linux中Tomcat和Jboss的安装和部署

                       LAMP环境搭建一个Discuz论坛

    展开全文
  • 在介绍Apache服务之前,先...部署Apache服务 [root@apache-server ~]# yum install httpd.x86_64 httpd-manual -y 安装服务 [root@apache-server ~]# systemctl start httpd 启动服务 [root@apache-server ~]#...

    在介绍Apache服务之前,先了解一下Web网络服务和其他两个服务。

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    配置文件

    在这里插入图片描述

    /etc/httpd/conf/httpd.conf 参数

    在这里插入图片描述

    在这里插入图片描述

    部署Apache服务

    [root@apache-server ~]# yum install httpd.x86_64 httpd-manual -y	安装服务
    [root@apache-server ~]# systemctl start httpd	启动服务
    [root@apache-server ~]# systemctl enable httpd.service	开机自启
    
    [root@apache-server ~]# firewall-config	将服务加入防火墙策略,图形界面方法
    
    [root@apache-server ~]# firewall-cmd --permanent --add-service=http	命令方法
    [root@apache-server ~]# firewall-cmd --permanent --add-service=https
    [root@apache-server ~]# firewall-cmd --reload
    
    [root@apache-server ~]# systemctl restart httpd.service	重启服务,使设置生效
    

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    修改默认端口

    [root@apache-server ~]# vim /etc/httpd/conf/httpd.conf
     43 Listen 8080
    
    [root@apache-server ~]# systemctl restart httpd.service	selinux处于强制状态
    
    
    [root@apache-server ~]# vim /etc/httpd/conf/httpd.conf
     44 Listen 6666
    
    [root@apache-server ~]# setenforce 0
    [root@apache-server ~]# systemctl restart httpd.service	selinux处于警告状态,
    selinux处于强制状态启动服务会失败,因为apache服务默认不支持6666端口
    
    [root@apache-server ~]# semanage port -l | grep http	查看支持的端口
    
    [root@apache-server ~]# firewall-config	防火墙图形界面允许端口
    
    [root@apache-server ~]# semanage port -a -t http_port_t -p tcp 6666	打开6666端口
    -a  添加  -t  类型  -p 端口 
    
    [root@apache-server ~]# systemctl restart httpd.service
    

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    修改默认发布文件

    [root@apache-server ~]# cd /var/www/html/
    [root@apache-server html]# ls
    [root@apache-server html]# vim index.html
      1 <h1>index's page</h1>
    
    [root@apache-server html]# vim westos.html
      1 <h1>westos's page</h1>
    第一个文件为Apache服务默认的发布文件,第二个是我们编写的文件
    [root@apache-server html]# systemctl restart httpd.service 
    [root@apache-server html]# vim /etc/httpd/conf/httpd.conf 
    164     DirectoryIndex westos.html index.html	哪个文件在前面就默认是哪个
    
    [root@apache-server html]# systemctl restart httpd.service
    

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    上面的图片,是在重启服务前的,下面的是在改了默认发布文件后重启服务所看到的

    在这里插入图片描述

    修改默认发布目录

    [root@apache-server html]# getenforce 
    [root@apache-server html]# mkdir -p /huawei/www/html
    [root@apache-server html]# vim /huawei/www/html/index.html
      1 <h1>huawei's page</h1>
    
    [root@apache-server html]# vim /etc/httpd/conf/httpd.conf 
    119 #DocumentRoot "/var/www/html"	注释掉默认的路径
    120 DocumentRoot "/huawei/www/html"	写上自己指定的路径
    121 <Directory "/huawei/www/html">
    122         Require all grented
    123 </Directory>
    
    [root@apache-server html]# semanage fcontext -a -t httpd_sys_content_t '/huawei(/.*)?'
    [root@apache-server html]# restorecon -RvvF /huawei/
    [root@apache-server html]# ls -Z /huawei/www/html/
    [root@apache-server html]# systemctl restart httpd.service
    

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    日志查看、排错
    [root@apache-server html]# cat /etc/httpd/logs/error_log
    [root@apache-server html]# cat /var/log/messages
    恢复实验环境
    [root@apache-server ~]# rm -rf /etc/httpd/conf/httpd.conf 
    [root@apache-server ~]# yum reinstall httpd.x86_64 -y
    [root@apache-server ~]# systemctl restart httpd.service
    

    虚拟主机功能

    [root@apache-server ~]# mkdir -p /var/www/westos.com/news/html
    [root@apache-server ~]# mkdir -p /var/www/westos.com/music/html
    [root@apache-server ~]# vim /var/www/westos.com/news/html/index.html
      1 <h1>news's page</h1>
    
    [root@apache-server ~]# vim /var/www/westos.com/music/html/index.html
      1 <h1>music's page</h1>
    
    [root@apache-server ~]# vim /etc/httpd/conf.d/a_default.conf
      1 <VirtualHost _default_:80>
      2         DocumentRoot /var/www/html
      3         CustomLog logs/default.log combined
     			 logs = /etc/httpd/log	combined 所有类型的日志
      4 </VirtualHost>
    
    [root@apache-server ~]# vim /etc/httpd/conf.d/news.conf
      1 <VirtualHost *:80>
      2         ServerName news.westos.com
      3         DocumentRoot /var/www/westos.com/news/html
      4         CustomLog logs/news.log combined
      5 </VirtualHost>
      6 <Directory "/var/www/westos.com/news/html">
      7         Require all granted
      8 </Directory>
    
    [root@apache-server ~]# cp /etc/httpd/conf.d/news.conf /etc/httpd/conf.d/music.conf
    [root@apache-server ~]# vim /etc/httpd/conf.d/music.conf
    :%s/news/music/g	批量修改
    
      1 <VirtualHost *:80>
      2         ServerName music.westos.com
      3         DocumentRoot /var/www/westos.com/music/html
      4         CustomLog logs/music.log combined
      5 </VirtualHost>
      6 <Directory "/var/www/westos.com/music/html">
      7         Require all granted
      8 </Directory>
    [root@apache-server ~]# systemctl restart httpd.service 
    
    在客户端本地域名解析
    [root@foundation60 Desktop]# vim /etc/hosts	使用超级用户编辑,权限限制
    172.25.254.160  www.westos.com news.westos.com music.westos.com
    

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    下面三张图依次是默认主机、news主机、music主机。

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    测试机做域名解析

    在这里插入图片描述

    在这里插入图片描述

    测试

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    访问控制

    基于IP进行访问控制

    [root@apache-server ~]# vim /etc/httpd/conf.d/a_default.conf 
    
      1 <VirtualHost _default_:80>
      2         DocumentRoot /var/www/html
      3         CustomLog logs/default.log combined
      4 </VirtualHost>
      5 <Directory "/var/www/html">
      6          Order Allow,Deny	这里的Allow和Deny有先后顺序,后面的会覆盖掉前面的
      7          Allow from all
      8          Deny from 172.25.254.60
      9 </Directory>
     
    [root@apache-server ~]# systemctl restart httpd.service 
    

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    基于帐号-密码进行访问控制

    [root@apache-server ~]# htpasswd -cm http_userlist admin
    [root@apache-server ~]# htpasswd -m http_userlist admin1
    
    [root@apache-server ~]# vim /etc/httpd/conf.d/a_default.conf 
    
     10 <Directory "/var/www/html">
     11         AuthUserFile /etc/httpd/conf.d/http_userlist
     12         AuthName "Please input username and password !!!"
     13         AuthType basic
     14 #       Require user admim
     15         Require valid-user
     16 </Directory>
    
    [root@apache-server ~]# systemctl restart httpd.service
    

    在这里插入图片描述

    在这里插入图片描述

    展开全文
  • Service Temporarily Unavailable The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later. ...Apache/2.2.15 (CentOS) Server

    Service Temporarily Unavailable

    The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.


    Apache/2.2.15 (CentOS) Server at www.hacpyzlglb.net Port 80

    查看cpache log:
    [Fri Jun 27 16:08:32 2014] [error] ap_proxy_connect_backend disabling worker for (xx.xx.98.34)
    [Fri Jun 27 16:12:23 2014] [error] (13)Permission denied: proxy: HTTP: attempt to connect to xx.xx.98.34:1080 (xx.xx.98.34) failed
    [Fri Jun 27 16:12:23 2014] [error] ap_proxy_connect_backend disabling worker for (xx.xx.98.34)
    [Fri Jun 27 16:12:23 2014] [error] proxy: HTTP: disabled connection for (xx.xx.98.34)
    执行
    [root@log]#/usr/sbin/getsebool -a |grep httpd_can_network_connect
    httpd_can_network_connect --> off
    httpd_can_network_connect_cobbler --> off
    httpd_can_network_connect_db --> off

    于是尝试解决方案:
      我们需要将httpd_can_network_connect设置为on: 
      [root@ logs]# /usr/sbin/setsebool -P httpd_can_network_connect=1   
      [root@ logs]# /usr/sbin/getsebool -a |grep httpd_can_network_connect 
      httpd_can_network_connect --> on      
      重新访问,页面果然可以访问了。 
    另外直接关掉SELinux也是可以解决这个问题的: 
    修改/etc/selinux/config 然后重启: 
       SELINUX=disabled     或者实时生效的方式:  
       [root@ var]# /usr/sbin/setenforce 0  

    转自http://blog.sina.com.cn/s/blog_40ce02d70102uw1m.html
    展开全文
  • linux apache部署 django 网站 (这么难用的编辑器) 1.安装配置apache

    在linux apache 上部署 django 网站

    (这么难用的编辑器)

    1.安装配置apache

    1.    1网络上有很多相关内容,不再写了

    2.测试的时候记得开启防火墙端口:

    1)     /sbin/iptables -I INPUT -p tcp --dport 80-j ACCEPT

    2)     linux下的开启防火墙80端口命令。

    3)     使用的是root账户去操作,documentroot 设置在了root目录下,一直出现permissiondeny。

    4)     改了就好了。因为~apache的群组是apache ,是没有权限操作root目录的。

    5)     (这么难用的编辑器!!!!!)


    展开全文
  • Linux环境使用Apache部署静态html页面 文章目录Linux环境使用Apache部署静态html页面环境安装httpd启动Apache并验证修改httpd.conf 环境 CentOS Linux release 7.2.1511 + httpd-2.4.6-80 安装httpd #检查是否安装和...
  • 用django写了个demo,目前要部署apache上 需求: django部署apache 【其中变量$USER为你的账号】 1.安装apache 和 django A.下载apache: http://httpd.apache.org/download.cgi#apache22 版本...
  • Linux Apache 服务程序的部署 首先了解一下网络服务 我们平时访问的网站服务就是 Web 网络服务,一般是指允许用户通过浏览器访问到互联网中各种资源的服务。Web 网络服务是一种被动访问的服务程序,即只有接收...
  • linux下使用Apache服务部署静态网站 一、contos7安装Apache 1、把光盘设备中的系统镜像挂载到/media/cdrom目录中 mkdir -p /media/cdrom(创建要挂载的目录) mount /dev/cdrom /media/cdrom(把cdrom挂载到...
  • 首先下载apache安装包:http://download.csdn.net/detail/xb12369/8619361 上传到服务器目录 /usr/local/src: 1.解压缩 # cd /usr/local/src # tar -zvxf httpd-2.2.29.tar.gz //解压 # cd httpd-2.2.29 2....
  • apache 2.4.18 二、软件安装 1.python 一般linux会自带python环境,建议使用python2,如果没有安装可以使用如下命令安装python apt-get install python 2.flask 使用如下命令安装flask pip install f...
  • 在前几篇文章中我们一起探讨了如何在Linux环境中安装ASP.NET Core运行时环境及将ASP.NET Core项目部署在Jexus中,这篇文章中我们将探讨如何将AS...
  • 之前工作中处理过apache部署的django项目,今天自己也试着部署了一下,比linux中部署要容易一些,就简单记录一下部署过程吧! 一、下载Apache 在百度搜索框输入Apache下载,进入第一条,找到这个位置: 选个自己...
  • 修改端口8888,发现httpd无法重启 如果此时报错 killed 需要做以下操作 重启后,重新semanage成功 aaaaaaaaaaaaaaaaaaaaaaaaaaaa 发现访问受限。查看日志文件何处有问题 ......
  • 刚过去的暑假两个月,留在学校,一边考驾照,一边一门心思的想着搞个校内的小网站,两个月过去了,小网站倒是搞好了,但是真心没有时间维护,最近找了个实习的公司,更是没有时间了,这是链接:www.3shanmen.com ,...
  • Linux下apache怎么配置https访问,Linux下apache配置https方法教程,apache配置https方法步骤介绍。 1.安装Openssl 要使Apache支持SSL,需要首先安装Openssl支持。 下载Openssl:http://www.openssl.org/source/ ;...
  • 之前买的一台腾讯云服务器,在上边部署过一次html网页,但是当时由于是在上课的时候搞的,没有记录下来,然后那个服务器到期了,入手了阿里云,把之前的网页挪过来,记录一下操作,方便以后查看 环境: 阿里云的...
  • 1、首先下载Apache的开源tar包 2、编译 3、配置httpd.conf文件 修改 httpd.conf 文件中: LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_connect_module modules/mod_proxy_connect.so ...
  • 一、远程拷贝项目至服务器 &amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;nbsp;...Linux服务器上部署Javaweb项目环境搭建接博主上篇博客: https://blog.csdn.net/wilson_m/article/details/80341
  • 本身而言,linux下Apache的根目录设置为/var/www/html,而laravel设置的访问目录是learnlaravel5/public。直接放在根目录下面,则访问打时候需要输入一长串,太麻烦。所以想着也配置,跟作者似的,输入个...
1 2 3 4 5 ... 20
收藏数 106,673
精华内容 42,669
关键字:

linux下apache部署