rockylinuxapache和Linux服务配置

目录

apache

nginx

反向代理配置[root@k8s2 ~]# [root@k8s2 ~]# cat /etc/nginx/conf.d/webserver.confserver {    listen        80;    server_name    www.sxy1.com;    location / {        root /var/www/html;        index index.html;    }    location /py/{        proxy_pass http://127.0.0.1:9000/;    }}


DigitalOcean这家云计算提供了一个在线生成nginx配置的工具

我们主要使用nginx来完成两个方向的功能

1.在网站搭建过程中,将静态资源和动态解耦

2。对后台服务器进行反向代理,并进行负载均衡调节

3。什么时候会用到正向代理,假如说我们公司只有一台电脑能够上网,剩下只能公司内部互相访问。

我们很少会用到正向代理

先阶段,一般Apache很少用于给客户端提供web服务,更多的是linux以及一些管理软件,监控平台会使用Apache,一般网站都是用nginx来提供web服务

在RHEL系的发行版中,apache的web服务器对应的软件包名为  httpd,在debian的发行版中,对应的软件名为apache2

apache

我们可以直接使用软件包管理安装器安装相关服务和依赖

yum  install -y httpd      ###下载apache

systemctl   status  httpd            ##启动apache

systemctl    enable  httpd           ##开机自启apache

vim  /var/www/html/index.html     ###编辑apache页面

主配置文件  /etc/httpd/conf/httpd,conf

子配置文件   /etc/httpd/conf.d/

数据目录    /var/www/html/

ss  -anplt  |  grep  :80    看看端口号,起来没

发布对不在默认的数据目录,如何发布

1.更改发布目录

[root@server ~]# mkdir /srv/myhtml

[root@server ~]# vim /etc/httpd/conf/httpd.conf

DocumentRoot "/srv/myhtml"

/srv/myhtml">

Options Indexes FollowSymLinks

AllowOverride None

2.通过符号连接(软连接)访问到其他目录

[root@server ~]# ln -s /srv/myhtml/ /var/www/html/

访问

http://192.168.10.100/myhtml/

3.别名: 修改配置文件

[root@server ~]# vim /etc/httpd/conf/httpd.conf

alias /myhtml /srv/myhtml

/srv/myhtml">

Require all granted

Options Indexes

[root@server ~]# systemctl restart httpd

nginx

nginx是一个轻量级的代理服务软件,兼具了web服务器的功能,相对于apache而言,nginx内存消耗和并发能力强,而apache更适合一些动态脚本的承载

一般情况下,我们会使用nginx作为对外服务,对内的管理平台大多数还是会以apache为承载

nginx服务目前主要的一个作用就是用来做代理服务,在代理服务中又分为正向代理和反向代理

正向代理:如果我们使用nginx作为正向代理的时候,我们的客户端在访问目标主机之前,会将请求发送到nginx上面,通过nginx再发送带目标主机上,目标主机会认为是从nginx主机发送过来的请求

正向代理是我们打算访问出去的时候,我们的请求是发往nginx的,然后由nginx代替我们访问目标主机

反向代理;

是我们使用nginx作为反向代理,我们客户端会去访问nginx主机,由nginx主机把我们的访问请求转发到服务端上,等待服务端请求完毕之后在回应我们的客户端 

一般来说,面向客户端的时候,我们称为正向代理(多个客户端通过一个nginx向外发出请求)面向服务端的时候,我们成为反向代理(多个服务端通过一个nginx接受请求)

什么时候会用到正向代理,假如说我们公司只有一台电脑能够上网,剩下只能公司内部互相访问。

我们很少会用到正向代理

在主机上安装nginx

yum  install  nginx

dnf  install   nginx

惯例处理防火墙和启动问题

rocky

systemctl  start  nginx

systemctl   enable   nginx

[root@k8s2 usr]# firewall-cmd --add-service=http
[root@k8s2 usr]# firewall-cmd --add-service=http --permanent 
 

红帽体系中默认的web目录为/usr/share/nginx/html

不同于httpd,默认的nginx这边是不会将目录内的内容以网页列表或者表格的形式展现出来,必须使用具体的文件的url的访问方式才可以访问。

nginx默认的配置文件子啊  /vim/etc/nginx/nginx.conf

在配置文件里讲解

###全局配置

# For more information on configuration, see:
#   * Official English Documentation: http://nginx.org/en/docs/
#   * Official Russian Documentation: http://nginx.org/ru/docs/

user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;

# Load dynamic modules. See /usr/share/doc/nginx/README.dynamic.
include /usr/share/nginx/modules/*.conf;

###对于连接的单独配置

events {
    worker_connections 1024;
}

###针对于http的单独配置

http {
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile            on;
    tcp_nopush          on;
    tcp_nodelay         on;
    keepalive_timeout   65;
    types_hash_max_size 4096;

    include             /etc/nginx/mime.types;
    default_type        application/octet-stream;

    # Load modular configuration files from the /etc/nginx/conf.d directory.
    # See http://nginx.org/en/docs/ngx_core_module.html#include
    # for more information.
    include /etc/nginx/conf.d/*.conf;          ##指定附加文件的位置

   

###具体的每一个单独的http连接的管理(例如虚拟主机,代理管理等)

       server {
        listen       80;
        listen       [::]:80;
        server_name  _;
        root         /usr/share/nginx/html;

        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;

        error_page 404 /404.html;
        location = /404.html {
        }

        error_page 500 502 503 504 /50x.html;
        location = /50x.html {
        }
    }

# Settings for a TLS enabled server.
#
#    server {
#        listen       443 ssl http2;
#        listen       [::]:443 ssl http2;
#        server_name  _;
#        root         /usr/share/nginx/html;
#
#        ssl_certificate "/etc/pki/nginx/server.crt";
#        ssl_certificate_key "/etc/pki/nginx/private/server.key";
#        ssl_session_cache shared:SSL:1m;
#        ssl_session_timeout  10m;
#        ssl_ciphers HIGH:!aNULL:!MD5;
#        ssl_prefer_server_ciphers on;
#
#        # Load configuration files for the default server block.
#        include /etc/nginx/default.d/*.conf;
#
#        error_page 404 /404.html;
#            location = /40x.html {
#        }
#
#        error_page 500 502 503 504 /50x.html;
#            location = /50x.html {
#        }
#    }

}
 

 我们尝试添加一个正向代理

[root@k8s2 ~]# cat /etc/nginx/conf.d/proxy.conf
server {
    listen 10080;
    server_name _;
    resolver 10.10.10.102;

    access_log  /tmp/proxy.access.log;

    error_log  /tmp/proxy.error.log,

    location / {
        proxy_pass $scheme://$host$request_uri;
        proxy_set_header  Host  $httpd_host    

}    
}

我们主要使用nginx来完成两个方向的功能

1.在网站搭建过程中,将静态资源和动态解耦

2。对后台服务器进行反向代理,并进行负载均衡调节

这里我们来模拟进行搭建一个环境,来进行静态资源和动态资源的解耦,并进行一下反向代理的内容

反向代理配置
[root@k8s2 ~]# 
[root@k8s2 ~]# cat /etc/nginx/conf.d/webserver.conf
server {
    listen        80;
    server_name    www.sxy1.com;
    location / {
        root /var/www/html;
        index index.html;
    }
    location /py/{
        proxy_pass http://127.0.0.1:9000/;
    }
}
 

@nginx nginx-1.0.9]# cd /usr/local/nginx-1.0.9

[root@nginx nginx-1.0.9]# ./configure --prefix=/usr/local/nginx

[root@nginx nginx-1.0.9]# make && make install

[root@xen01 ~]# sed -i '/^[ ]*#/d; /^$/d' /usr/local/nginx/conf/nginx.conf

[root@nginx conf]# cat -n /usr/local/nginx/conf/nginx.conf

#user nobody;

worker_processes 1;

events {

worker_connections 1024;

}

http {

upstream htmlservers {

ip_hash;

server 192.168.22.69:80;

server 192.168.22.30:80;

}

upstream phpservers {

ip_hash;

server 192.168.22.11:80;

server 192.168.22.12:80;

}

server {

listen 80;

server_name localhost;

location / {

root html;

index index.html index.htm;

if ($request_uri ~* \.html$){

proxy_pass http://htmlservers;

}

if ($request_uri ~* \.php$){

proxy_pass http://phpservers;

}

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

}

}

[root@nginx conf]# /usr/local/nginx/sbin/nginx -t

nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok

nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

[root@nginx conf]# /usr/local/nginx/sbin/nginx

[root@nginx conf]# netstat -tnlp | grep :80

tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 11276/nginx

tcp 0 0 0.0.0.0:8084 0.0.0.0:* LISTEN 5214/stunnel

 

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

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

相关文章

ai 幻觉

ai幻觉: 感知人类观察者不存在或无法感知的模式或对象,从而产生无意义或完全不准确的输出 有时 AI 算法会生成并非基于训练数据的输出结果,继而被转换器错误解码或不遵循任何可识别的模式。换句话说,它会在给出响应时“产生幻觉” 致因:训练…

freeRTOS移植实验

提示:文章 文章目录 前言一、背景第6章节 二、2.12.2 三、3.1 总结 前言 前期疑问: 本文目标: 一、背景 在家里先使用野火网盘资料里的freeRTOS源码,网盘里是v9.0.0。 J:\野火\STM32F103ZET6_霸道开发板\A盘(资料盘…

食品加工温控场景:PROFIBUS转MODBUS的温控表连接规范

在现代的工业自动化领域里,实现不同通信协议设备间无缝对接的技术日益受到重视。这不仅关乎系统整合性和效率的提升,更是实现复杂工业过程自动化的必经之路。特别是在众多的通信协议中,MODBUS和PROFIBUS这两种广泛使用的协议因其各自的优势而…

【动态规划】回文串(二)

📝前言说明: 本专栏主要记录本人的动态规划算法学习以及LeetCode刷题记录,按专题划分每题主要记录:(1)本人解法 本人屎山代码;(2)优质解法 优质代码;&…

Ubuntu22.04.5 桌面版然后安装 VMware 17

安装 VMware 需要 GCC 12版本 标题通过 PPA 安装 这是最简单的方法,适用于大多数 Ubuntu 版本。 步骤 1:添加 PPA 仓库 sudo apt update sudo apt install software-properties-common sudo add-apt-repository ppa:ubuntu-toolchain-r/test sudo apt…

深入解析 MySQL 架构:从基础到高级

MySQL 是一款广泛使用的开源关系型数据库管理系统,以其高性能、可靠性和灵活性而闻名。无论是小型创业公司还是大型企业,MySQL 都是许多应用程序的首选数据库解决方案。本文将深入探讨 MySQL 的架构设计,帮助读者更好地理解其内部工作机制&am…

BACnet协议移植适配实现BACnet/IP和BACnet MSTP相关功能

1、从GitHub或者其他网站下载最新的协议栈源码 源码结构如图所示: 其中src是协议栈源码,可直接拿来使用,apps里面是一些功能的应用示例,有BACnet IP,BACnet MSTP,BACnet Router等功能。 2、协议栈移植完成…

Ubuntu 22.04.1 LTS 离线安装Docker(最快方法,仅需一个压缩文件和两个脚本)

作者亲测:亲测有效无bug。 利用ubuntu22.04下载完docker-27.4.1.tgz,然后按照下面方法安装。选择sudo方法。 tips:这个ubuntu22.04是迁移后的服务器的版本,不是迁移前的版本。 下载 下载地址 : https://download.docker.com/linux/static/stable/x86_…

Tkinter --按钮点击事件应用场景

第二章 事件处理 目录 第二章 事件处理 四、事件处理 4.1 按钮点击事件 4.1.1信息展示类场景 1. 静态文本说明 ​编辑 2. 动态状态显示 4.1.2.界面美化与装饰 1. 图像 / 图标展示 ​编辑 2. 分隔与布局辅助 4.1.3 交互反馈与提示 1. 操作结果提示 2. 帮助与说明文本…

计算机网络学习笔记:TCP流控、拥塞控制

文章目录 前言一、TCP流量控制1.1、案例:三次流量控制1.2、持续计时器 二、TCP拥塞控制2.1、拥塞控制的指标2.2、慢开始算法和拥塞避免算法2.3、快重传算法和快恢复算法2.4、练习 三、TCP拥塞控制与网际层拥塞控制总结 前言 TCP协议中的流量和拥塞,是两个…

【Linux】Tomcat搭建

前言 Tomcat Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。 JSP JSP是一种跨平台的动态网页技术标准,可以…

Ajax 核心知识点全面总结

文章目录 Ajax 核心知识点全面总结一、Ajax 基础概念1、定义2、核心特点 二、Ajax 工作原理与核心组件1、工作流程2、XMLHttpRequest(XHR)对象 三、Ajax 请求方法与参数1、常见请求方法2、请求参数处理 四、Ajax 异步与错误处理1、异步处理2、错误处理 五…

SpinFlowSim:用于癌症组织学信息驱动的扩散MRI微血管映射的血流模拟框架|文献速递-深度学习医疗AI最新文献

Title 题目 SpinFlowSim: A blood flow simulation framework for histology-informeddiffusion MRI microvasculature mapping in cancer SpinFlowSim:用于癌症组织学信息驱动的扩散MRI微血管映射的血流模拟框架 01 文献速递介绍 在扩散磁共振成像&#xff08…

量化面试绿皮书:21. 抛硬币游戏

文中内容仅限技术学习与代码实践参考,市场存在不确定性,技术分析需谨慎验证,不构成任何投资建议。 21. 抛硬币游戏 两个赌徒正在玩一个抛硬币游戏。 赌徒A有(n1)枚均匀硬币,赌徒B有n枚均匀硬币。 Q: 如果两人同时抛掷所有硬币&a…

OpenLayers 框架体系

注:当前使用的是 ol 9.2.4 版本,天地图使用的key请到天地图官网申请,并替换为自己的key OpenLayers框架组织结构庞大,只通过官网API进行查看,对框架结构缺少一个整体、全面的看法。借助树形结构图或思维导图&#xff0…

缓存系统-基本概述

目录 一、系统概述 二、名词解释 三、淘汰策略 1、LRU 2、LFU 3、FIFO 4、TTL 5、Random 四、读写模式 1、Cache Aside(旁路缓存) 2、Write Through(直写) 3、Write Back(回写) 五、问题方案 …

基于GNU Radio Companion搭建的BPSK收发通信实验

目录 一、实验目的和要求 二、实验内容 1.Lab5 仿真设计一个BPSK的数字收发射系统 Lab6 实际使用RTLSDR解调BPSK信号 一、实验目的和要求 1.了解软FM的工作方式和原理,数字通信的码间串扰及星座图 2.掌握并正确使用RTL-SDL硬件和Gnuradio软件 3.正确使用Gnraduo软件,建…

华为OD机试-返回矩阵中非1的元素、个数/数值同化-BFS(JAVA 2025B卷)

import java.util.*;/*** author 308413* version Ver 1.0* date 2025/6/18* description 返回矩阵中非1的元素*/ public class Non1ElementInMatrix {public static void main(String[] args) {Scanner scanner new Scanner(System.in);int N scanner.nextInt();int M scan…

Redis学习笔记——黑马点评 消息队列25-30

前言: 学习收获: Redis消息队列: 消息队列(Message Queue),字面意思就是存放消息的队列。最简单的消息队列包括3个角色: 消息队列:存储和管理消息,也被称为消息代理生…

基于Django+Vue3的草莓病害检测系统设计与实现,Web前后端分离,YOLOv8 Web目标检测系统

这里写自定义目录标题 基于DjangoVue3的草莓病害检测系统 基于DjangoVue3的草莓病害检测系统 本项目结合 YOLOv8 与 Django Vue3 ,构建了一个通用的 Web 前后端系统,便于用户进行目标检测的操作和展示,实现对图片、视频实时目标检测和摄像头…