Linux——web网站服务(一)

一、安装httpd服务器Apache网站服务

1、准备工作

        为了避免发送端口冲突,程序冲突等现象,卸载使用rpm方式安装的httpd

#使用命令检查是否下载了httpd
[root@server ~]# rpm -qa httpd
#如果有则使用
[root@server ~]# rpm -e httpd --nodeps 

        Apache的配置及运行需要apr 、 pcre等软件包的支持.因此应从系统光盘镜像中预先安装这些软件及其开发包(devel),以便提供相应的库和头文件.确保Apache 的安装顺利完成。

#先将光盘挂载到mnt目录
[root@localhost ~]# mount /dev/cdrom /mnt/
mount: /dev/sr0 写保护,将以只读方式挂载[root@localhost ~]# rpm -ivh /mnt/Packages/apr-1.4.8-3.el7_4.1.x86_64.rpm 
[root@localhost ~]# rpm -ivh /mnt/Packages/apr-devel-1.4.8-3.el7_4.1.x86_64.rpm 
[root@localhost ~]# rpm -ivh /mnt/Packages/cyrus-sasl-devel-2.1.26-23.el7.x86_64.rpm 
[root@localhost ~]# rpm -ivh /mnt/Packages/expat-devel-2.1.0-10.el7_3.x86_64.rpm 
[root@localhost ~]# rpm -ivh /mnt/Packages/libdb-devel-5.3.21-24.el7.x86_64.rpm 
[root@localhost ~]# rpm -ivh /mnt/Packages/openldap-devel-2.4.44-20.el7.x86_64.rpm 
[root@localhost ~]# rpm -ivh /mnt/Packages/apr-util-devel-1.5.2-6.el7.x86_64.rpm 
[root@localhost ~]# rpm -ivh /mnt/Packages/apr-util-1.5.2-6.el7.x86_64.rpm 
[root@localhost ~]# rpm -ivh /mnt/Packages/pcre-devel-8.32-17.el7.x86_64.rpm 
[root@localhost ~]# rpm -ivh /mnt/Packages/pcre-8.32-17.el7.x86_64.rpm 

2、源码编译及安装

        源码编译安装httpd 服务的过程主要包含解包、配置.编译及安装。

#进入ftp获取httpd压缩包
[root@localhost ~]# wget --ftp-user=135 --ftp-password=123.123 ftp://172.16.37.13/软件下载/y2/y2c/httpd-2.4.25.tar.gz

 1)解包

         将下载获得的httpd源码包解压并释放到/usr /src目录下,且切换到展开后的源码目录中。

[root@localhost ~]# tar zxf httpd-2.4.25.tar.gz -C /usr/src

2)配置

        根据服务器的实际应用需要,可以灵活设置不同的定制选项.如指定安装路径.启用字符集支持等。

[root@localhost httpd-2.4.25]# ./configure --prefix=/usr/local/httpd --enable-so --enable-rewrit --enable-charset-lite --enable-cgi

3)编译及安装

        完成配置以后.执行"mnake"命令进行编译.将源代码转换为可执行的程序;然后执行"make install"命令完成最后的安装过程;将编译完的httpd程序及相关目录、文件复制到预设的安装目录(由配置时的“一―prefix”选项指定)。其中“make”的过程可能会需要较长的时间。

[root@localhost httpd-2.4.25]# make
[root@localhost httpd-2.4.25]# make install

3、确认安装结果

        由于指定的安装目录为/usr /local/httpd,因此 httpd服务的各种程序.模块.帮助文件等都将复制到此目录下。

[root@localhost httpd-2.4.25]# cd /usr/local/httpd/
[root@localhost httpd]# ls
bin  build  cgi-bin  conf  error  htdocs  icons  include  logs  man  manual  modules

4、优化执行路径

        通过源码编译安装的 httpd 服务.程序路径并不在默认的搜索路径中,为了使该服务在使用时更加方便,可以为相关程序添加符号链接

#为bin目录创建软链接
[root@localhost httpd-2.4.25]# ln -s /usr/local/httpd/bin/* /usr/local/bin
[root@localhost httpd-2.4.25]# ls -l /usr/local/bin/httpd /usr/local/apachectl
ls: 无法访问/usr/local/apachectl: 没有那个文件或目录
lrwxrwxrwx. 1 root root 26 12月  9 00:57 /usr/local/bin/httpd -> /usr/local/httpd/bin/httpd
[root@localhost httpd-2.4.25]# 

 5、添加httpd系统服务

        CentOS 7系统下.将编译安装的程序添加为系统服务有两种方式:①通过chkconfig命令添加为系统服务,然后由systemctl进行管理,②在/lib/systemd/systern/目录下,手动编写以.service结尾的单元(unit)配置文件。
        1)使用chkconfig添加系统服务
若希望将httpd添加为系统服务,以便通过chkconfig进行管理.需要建立可控的服务脚本。例如,可将apachectl脚本复制为/etc/init ,d/httpd,并在文件开头添加chkconfig识别配置,然后将其添加为标准的Linux系统服务。

#将apachectl脚本复制为etc/init.d/httpd
[root@localhost ~]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
#进入httpd配置文件
[root@localhost ~]# vim /etc/init.d/httpd #chkconfig:35 85 31 //服务识别参数,在级别3、5启动:启动和关闭的顺序分别为85/21
#description:Startup script for the Apache HTTP Server //服务描述信息[root@localhost ~]# chkconfig --add httpd   //将http添加为系统服务

        2)建立[service].service 配置文件
在/lib/systemd/system/目录下,建立一个以.service结尾的单元(unit)配置文件.用于控制由systemd控制或监控的httpd服务。配置文件主要分为三个部分.控制单元[Lhit]的定义、服务[Service]的定义以及安装部分[Install],具体内容如下

[Unit]
Description=The Apache HTTP Server
After=network.target[Service]
Type=forking
PIDFile=/usr/local/httpd/logs/httpd.pid
ExecStart=/usr/local/bin/apachectl $OPTIONS
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=on-failure
RestartSec=42s[Intall]
WantedBy=graphical.target`

 httpd.service文件编写完成后,执行如下命令设置httpd服务开机启动

[root@localhost ~]# systemctl start httpd.service
[root@localhost ~]# systemctl is-enabled httpd.service    //查看httpd服务的自启动状态

 6、配置并启动http服务

 1)配置http服务

               编辑httpd 服务的主配置文件httpd , conf,查找配置项“ServerName”,在附近添加一行内容"ServiceName www, bdqn. com”,用于设置网站名称。

[root@localhost ~]# vim /usr/local/httpd/conf/httpd.conf
//更改第200行内容#ServerName www.bdqn.com:80

        修改httpd . conf 文件的配置内容以后,建议使用带“一t”选项的apachectl命令对配置内容进行语法检查〈或使用“httpd -t”命令)。如果没有语法错误.将会显示“Syntax OK”的信息,否则需要根据错误提示信息来修正配置。

[root@localhost ~]# apachectl -t
Syntax OK

2)启动httpd服务

         使用脚本文件/usr/local/httpd/bin/apachectl,分别通过“start""stop”"restart”选项进行控制,可用来启动.终止.重启httpd服务。或者使用systemctl命令控制/lib/systernd/system/ttpd , service配置文件.从而实现对httpd 服务进行控制。正常启动httpd 服务以后,默认将监听TCP协议的8O端口。

[root@localhost ~]# netstat -anpt | grep httpd
tcp6       0      0 :::80                   :::*                    LISTEN      27321/httpd         
[root@localhost ~]# 

3)部署网页文档

        对于新编译安装的httpd 服务,网站根目录位于/usr /local /httpd/htdocs 下,需要将Web站点的网页文档复制或上传到此目录下。httpd服务器默认已提供了一个名为index, html的测试网页作为访问网站时的默认首页。
        

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/215467.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

抖音小店经营规则解析:避免被扣分的关键因素

抖音小店是一个受欢迎的电商平台,为创业者提供了良好的销售和推广机会。为了确保在抖音小店的运营中不会被扣分或出现其他问题,不若与众整理了几个关键的规则需要注意和遵守。 1. 产品合规性: 抖音小店要求所有销售的产品必须合法合规&#x…

欣赏动态之美,不如欣赏C语言实现动态内存管理之美 ! ! !

本篇会加入个人的所谓‘鱼式疯言’ ❤️❤️❤️鱼式疯言:❤️❤️❤️此疯言非彼疯言 而是理解过并总结出来通俗易懂的大白话, 我会尽可能的在每个概念后插入鱼式疯言,帮助大家理解的. 可能说的不是那么严谨.但小编初心是能让更多人能接受我们这个概念 !&#xff0…

ubuntu解决问题:E: Unable to locate package manpages-posix-dev

sudo apt-get install manpages-posix-dev 想要在ubuntu里面安装manpages-posix-dev这个包,发现弹出错误 E: Unable to locate package manpages-posix-dev 解决方法如下: 1 查看当前ubuntu的版本 abhishekitsfoss:~$ lsb_release -a No LSB module…

python自动化测试实战 —— WebDriver API的使用

软件测试专栏 感兴趣可看:软件测试专栏 自动化测试学习部分源码 python自动化测试相关知识: 【如何学习Python自动化测试】—— 自动化测试环境搭建 【如何学习python自动化测试】—— 浏览器驱动的安装 以及 如何更…

力扣题:数字与字符串间转换-12.12

力扣题-12.12 [力扣刷题攻略] Re:从零开始的力扣刷题生活 力扣题1:539. 最小时间差 解题思想:将字符串的时间形式换成数字形式的时间,然后计算差值即可,最重要的是最小的值加上一天的时间加入到数组最后&#xff08…

图文教程:stable-diffusion的基本使用教程 txt2img(多图)

之前我介绍了SD的安装过程,那么这篇将介绍怎么使用SD 使用模型 SD安装好之后,我们只有一个默认的模型。这个模型很难满足我们的绘图需求,那么有2种方法。 1是自己训练一个模型(有门槛)2是去网站上找一个别人练好的模…

windows 镜像下载地址

HelloWindows.cn - 精校 完整 极致 Windows系统下载仓储站

python自动化运维快速入门,python自动化运维教程

大家好,给大家分享一下python自动化运维需要掌握的技能,很多人还不知道这一点。下面详细解释一下。现在让我们来看看! 面向学员 熟练使用计算机,对Windows、Linux 有一点了解从业职或在校学生 对目前从事互联网运维,想…

附录:已实现的多品种回测收益

声明: 本人不进行任何投资建议,也不出售任何包括策略、算法的程序代码。 仅作为个人的2023年开发心路总结,有任何异议可以在评论区留言,可以讨论,如果你杠,那就是你对。 这世上有很多条路,每个…

12.11作业

第一个界面的头文件 #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QMovie> #include <QMessageBox>QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACEclass Widget : public QWidget {Q_OBJECTpublic:Widget(QWidg…

代理IP的正确打开方式,使用IPIDEA解决性能困境

目录 1、王婆卖瓜&#xff0c;自卖自夸2、问问2023最专业的AI机器人3、有事没事找吒哥 一、代理IP的困境和问题1、困境一&#xff1a;所在公司网络环境不好2、困境2&#xff1a;代理协议使用不当3、困境3&#xff1a;免费的代理服务器宽带小4、困境4&#xff1a;代理服务器距离…

第二百零二回 介绍一个三方包bluetooth_enable_fork

文章目录 1. 概念介绍2. 使用方法2.1 自定义主题2.2 覆盖父主题 3. 示例代码 我们在上一章回中介绍了图片缩放相关的内容&#xff0c;本章回中将介绍如使用主题.闲话休提&#xff0c;让我们一起Talk Flutter吧。 1. 概念介绍 我们在这里说的主题包含两方面的内容&#xff1a;…

Leetcode93 复原IP地址

复原IP地址 题解1 回溯(同分割回文字符串)Tips&#xff1a;换成deque<string>tmp会更快 有效 IP 地址正好由四个整数&#xff08;每个整数位于 0 到 255 之间组成&#xff0c;且不能含有前导 0&#xff09;&#xff0c;整数之间用 ‘.’ 分隔。 例如&#xff1a;“0.1.2…

SpringCloud面试题——Sentinel

一&#xff1a;什么是Sentinel&#xff1f; Sentinel是一个面向分布式架构的轻量级服务保护框架&#xff0c;实现服务降级、服务熔断、服务限流等功能 二&#xff1a;什么是服务降级&#xff1f; 比如当某个服务繁忙,不能让客户端的请求一直等待,应该立刻返回给客户端一个备…

达索系统SOLIDWORKS 2024零件特征功能增强

SolidWorks是一款专业的三维3D设计软件&#xff0c;功能强悍&#xff0c;支持分布式数据管理&#xff0c;支持直接处理网格数据&#xff0c;提供更多的数据的灵活性&#xff0c;使用起来高效便捷。可以帮助用户轻松进行3D CAD设计、机械设计、钣金设计、模拟设计、电气设计、PD…

swing快速入门(六)

注释很详细&#xff0c;直接上代码 上一篇 本篇新增内容 Gridlayout&#xff08;网格布局&#xff09; Textfield组件的最大限定长度 Panel()的默认布局方式 Gridlayout的默认布局位置 import java.awt.*;public class swing_test_4 {public static void main(String[]ar…

UE4 透明物体不渲染显示??

问题描述&#xff1a;半透明特效在背景&#xff08;半透明材质模型&#xff09;前&#xff0c;当半透明特效开始移动的时候&#xff0c;随着速度的加快会逐渐不渲染&#xff01; 解决办法&#xff1a; 1.设置透明度排序 2.如果还没效果&#xff0c;修改半透明背景模型以下材质…

visual studio 2022 IDE对C++代码反汇编

敲一段代码&#xff0c;在windows电脑儿上&#xff0c;忽然想用visual studio瞧瞧这段代码的汇编长什么样&#xff0c;怎么做呢&#xff1f; 代码有了 #include <stdio.h> void sort(int*,int);int main(){int array[] { 977,1,32,3,99,8,7,5,23,6 };int length int(…

2023年度总结

这一年一行代码都没写&#xff01;&#xff01;&#xff01; 因为我离开了这个行业&#xff0c;但我为了CSDN 这个位置没有空缺&#xff0c;不能留下遗憾&#xff0c;写下这篇博客吧。 强迫症&#xff0c;完美主义。。 留下三个问题吧 当初你为什么选择了计算机这个行业?现…

(C++)VS下sizeof(string(““))与linux-g++下sizeof(string(““))大小区别及原因剖析

个人主页&#xff1a;Lei宝啊 愿所有美好如期而遇 说明 博主是x86平台&#xff0c;所以下面的结果是28&#xff1b;x64平台下是40&#xff0c;size_t变了&#xff0c;由int变long long。 接下来我们先来介绍 vs 下string的数据结构 我们可以看到有一个_Buf数组&#xff0c;…