超簡單linux上部署Apache

1.Apache是什么?

Apache 是世界上最流行的 ??開源Web服務器軟件??,由 Apache 軟件基金會維護。

  • ??主要功能??:接收客戶端(如瀏覽器)的HTTP請求,返回網頁、圖片等靜態/動態資源。

  • ??特點??:

    • 跨平臺(Linux、Windows、macOS)

    • 模塊化設計(按需加載功能)

    • 支持多語言擴展(PHP、Python等)

    • 高穩定性和安全性

2.核心架構與工作原理??

多進程模型(MPM)??
  • ??Prefork??:多進程模式,每個請求由一個獨立子進程處理(適合穩定性要求高的場景)。

  • ??Worker??:多進程+多線程混合模式(平衡性能與資源消耗)。

  • ??Event??:基于事件驅動,高效處理高并發連接(現代推薦模式)。

3.Apache 安裝

#apache的基本信息
/etc/httpd/conf #apache的配置目錄
/etc/http/conf.d #子配置目錄
/etc/httpd/conf/httpd.conf #主配置文件
/lib/systemd/system/htpd.service #啟動文件
:80 #默認端口
/var/www/html #默認發布目錄
index.html #默認發布文件
#安裝apache
[root@apache ~]# dnf install httpd -y
#在火墻中放行web服務
[root@apache ~]# firewall-cmd --permanent --add-service=http
success
[root@apache ~]# firewall-cmd --permanent --add-service=https
success
#開啟服務
[root@apache ~]# systemctl enable --now httpd
#生成默認測試頁文件
[root@apache ~]# echo 172.25.254.100 > /var/www/html/index.html  #nginx的發布地為/usr/share/nginx/html/index.html
#測試:
[root@apache ~]# curl 172.25.254.100
172.25.254.100

4.Apache的基本配置信息

?4.1.端口修改

#修改配置文件
[root@apache ~]# vim /etc/httpd/conf/httpd.conf
47 Listen 8080
#刷新服務
[root@apache ~]# systemctl reload httpd
#設定火墻通過
[root@apache ~]# firewall-cmd --permanent --add-port=8080/tcp
success
[root@apache ~]# firewall-cmd --reload
#檢測
[root@apache ~]# netstat -antlupe | grep httpd
tcp6 0 0 :::8080 :::* LISTEN 0
78081 32315/httpd
#訪問:
[root@apache ~]# curl 172.25.254.100:8080
172.25.254.100

2.默認發布目錄

#建立默認發布目錄
[root@apache ~]# mkdir /web/html -p
#修改配置文件
[root@apache ~]# vim /etc/httpd/conf/httpd.conf
125 DocumentRoot "/web/html" #指定默認發布目錄位置
126 <Directory "/web/html">
127 Require all granted #對于目錄訪問進行授權
128 </Directory>
[root@apache ~]# systemctl restart httpd
[root@apache ~]# echo "/web/html's page" > /web/html/index.html
[root@apache ~]# curl 172.25.254.100:8080
/web/html's page

3.默認發布文件

#建立新的默認發布文件
[root@apache ~]# echo "/web/html/lee's page" > /web/html/lee.html
#當沒有對配置進行修改時新默認發布文件不會被默認訪問
[root@apache ~]# curl 172.25.254.100:8080
/web/html's page
[root@apache ~]# curl 172.25.254.100:8080/lee.html
/web/html/lee's page
#修改配置文件
[root@apache ~]# vim /etc/httpd/conf/httpd.conf
172 <IfModule dir_module>
173 DirectoryIndex lee.html index.html
174 </IfModule>
#重啟服務
[root@apache ~]# systemctl reload httpd
#測試:
[root@apache ~]# curl 172.25.254.100:8080
/web/html/lee's page

4.https

#安裝mod_ssl
[root@apache ~]# dnf install mod_ssl -y#建立證書和key文件目錄
[root@apache ~]# mkdir /etc/httpd/certs#制作證書
[root@apache ~]# openssl req \
-newkey rsa:2048 \
-nodes \                          # 這里 \ 表示空格的意思
-sha256 \
-keyout /etc/httpd/certs/timinglee.org.key \
-x509 \
-days 365 \
-out /etc/httpd/certs/timinglee.org.crtCountry Name (2 letter code) [XX]:CN
State or Province Name (full name) []:Shannxi
Locality Name (eg, city) [Default City]:XI'AN
Organization Name (eg, company) [Default Company Ltd]:timinglee
Organizational Unit Name (eg, section) []:webserver
Common Name (eg, your name or your server's hostname) []:www.timinglee.org
Email Address []:timinglee@timinglee.org#命令執行完成,證書出現
[root@apache ~]# ls /etc/httpd/certs/
timinglee.org.crt timinglee.org.key#編輯主配置文件
[root@apache ~]# vim /etc/httpd/conf.d/ssl.conf
86 SSLCertificateFile /etc/httpd/certs/timinglee.org.crt
95 SSLCertificateKeyFile /etc/httpd/certs/timinglee.org.key#重啟服務
root@apache ~]# systemctl reload httpd
[root@apache ~]# netstat -antlupe | grep httpd
tcp6 0 0 :::443 :::* LISTEN 0
85111 33518/httpd
tcp6 0 0 :::80 :::* LISTEN 0
80172 33518/httpd#在瀏覽器中訪問
https://服務器ip

6.apache的虛擬主機

#為每個發布站點建立默認發布目錄
[root@apache ~]# mkdir -p /var/www/virtual/timiniglee.org/news
[root@apache ~]# mkdir -p /var/www/virtual/timiniglee.org/bbs#為每個站點建立默認發布文件
[root@apache ~]# echo new.timinglee.org >
/var/www/virtual/timiniglee.org/news/index.html
[root@apache ~]# echo bbs.timinglee.org >
/var/www/virtual/timiniglee.org/bbs/index.html#修改配置文件
[root@apache ~]# vim /etc/httpd/conf.d/vhosts.conf
<VirtualHost _default_:80>
DocumentRoot /var/www/html
</VirtualHost>
<VirtualHost *:80>
ServerName bbs.timinglee.org
DocumentRoot /var/www/virtual/timiniglee.org/bbs/
</VirtualHost>
<VirtualHost *:80>
ServerName news.timinglee.org
DocumentRoot /var/www/virtual/timiniglee.org/news/
</VirtualHost>#刷新服務
[root@apache ~]# systemctl reload httpd
#測試:
1.在瀏覽器所在主機中手動編寫本地解析文件
[root@apache ~]# vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6#加入虛擬主機解析域名
172.25.254.100 mariadb.timinglee.org www.timinglee.org news.timinglee.org
bbs.timinglee.org2.測試效果
[root@apache ~]# curl www.timinglee.org
172.25.254.100
[root@apache ~]# curl bbs.timinglee.org
bbs.timinglee.org
[root@apache ~]# curl news.timinglee.org
new.timinglee.org

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/91691.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/91691.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/91691.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

前端 SSE 實戰應用:用最簡單的方式實現實時推送

前端 SSE 實戰應用&#xff1a;用最簡單的方式實現實時推送 &#x1f4cc; 點贊收藏關注不迷路&#xff01; 在前端項目中&#xff0c;我們常聽到“實時通信”這個需求 —— 聊天、進度、狀態變化、系統消息。 但提到實時&#xff0c;大家首先想到的是 WebSocket&#xff0c;對…

第16章 基于AB實驗的增長實踐——驗證想法:AB實驗實踐

?一、AB實驗全流程框架?實驗分為5個核心環節&#xff1a;實驗假設? → 實驗設計? →實驗運行? → 實驗分析? → 實驗決策??二、各環節核心要點詳解??1. 實驗假設??原則?&#xff1a;目標性、可歸因、可復用&#xff08;前兩者必選&#xff09;?&#xff08;1&…

解決【軟件安裝路徑】失敗的方法

出現問題上圖所示問題為&#xff1a;你的臨時目錄路徑中包含 Unicode 字符&#xff0c;這可能會導致安裝損壞。請參閱故障排除指南以獲取解決方法。出現問題的原因&#xff1a;添加路徑下存在中文&#xff0c;導致系統文件無法識別。解決方法步驟一&#xff1a;創建Temp(臨時文…

FreeRTOS學習筆記——總覽

考慮到RTOS能夠提升單片機開發能力&#xff0c;也是開發復雜任務的必經之路&#xff0c;還是有必要學習的。 FreeRTOS教程多&#xff0c;免費開源&#xff0c;是個不錯的選擇。后續可以考慮繼續學習RT-Thread等。 參考1&#xff1a;FreeRTOS(教程非常詳細&#xff09;——作者&…

Clip微調系列:《coOp: learning to prompt for vision-language models》

論文鏈接&#xff1a;arxiv.org/pdf/2109.01134v1 推薦視頻(clip_coop的代碼邏輯講解&#xff0c;代碼簡單&#xff0c;有助于理解)&#xff1a;CLIP和CoOp工作的簡單Pytorch復現和理解_嗶哩嗶哩_bilibili 其他參考鏈接&#xff1a;CoOp - CLIP 自適應Prompt工程 【一】_coop…

[論文閱讀] 人工智能 + 軟件工程 | 開源軟件中的GenAI自白:開發者如何用、項目如何管、代碼質量受何影響?

開源軟件中的GenAI自白&#xff1a;開發者如何用、項目如何管、代碼質量受何影響&#xff1f; 論文&#xff1a;Self-Admitted GenAI Usage in Open-Source SoftwarearXiv:2507.10422 Self-Admitted GenAI Usage in Open-Source Software Tao Xiao, Youmei Fan, Fabio Calefato…

AI繪畫版權問題全解析:你的作品真的屬于你嗎?

AI繪畫版權問題全解析:你的作品真的屬于你嗎? 關鍵詞:AI繪畫、版權歸屬、生成式AI、訓練數據、獨創性、法律合規、知識產權 摘要:當你用MidJourney生成一張“賽博朋克風格的熊貓”,或用Stable Diffusion畫出“梵高筆觸的星空咖啡館”時,你是否想過:這張圖的版權屬于你、…

深入理解Linux文件I/O:系統調用與標志位應用

目錄 一、引入 二、標志位 1、什么是標志位&#xff1f; 2、標志位傳遞示例 輸出結果分析 關鍵點解釋 三、文件描述符(File Descriptor)&#xff08;先大概了解&#xff09; 四、接口介紹&#xff1a;open()函數 1、命令查看 2、頭文件 3、函數原型 4、參數說明 …

海康線掃相機通過采集卡的取圖設置

目錄 1、掃描高度小于65000行 1.1 軟觸發 1、采集卡設置項 2、相機設置項 1.2 硬觸發 1、采集卡設置項 2、相機設置項 2、掃描高度大于65000行 1.1 軟觸發 1、采集卡設置項 2、相機設置 1.2 硬觸發 1、采集卡設置項 2、相機設置 2.1 幀掃描 2.2 行掃描 3、注意…

InfluxDB 3與Apache Parquet:打造高性能時序數據存儲與分析解決方案

在當今數據驅動的時代&#xff0c;各行業產生的數據量呈爆炸式增長&#xff0c;如何高效存儲和管理海量數據成為企業和開發者面臨的重大挑戰。對于時序數據而言&#xff0c;其具有數據量大、寫入頻繁、查詢模式多樣等特點&#xff0c;對存儲系統的性能和效率提出了更高的要求。…

20250718-4-Kubernetes 應用程序生命周期管理-Pod對象:實現機制_筆記

一、Pod對象&#xfeff;&#xfeff;1. 資源共享實現機制1&#xff09;共享網絡&#xfeff;基本概念實現方式&#xff1a;通過將業務容器網絡加入到負責網絡的容器&#xff08;infra container&#xff09;實現網絡共享核心特點&#xff1a;共享網絡協議棧&#xff08;包括TC…

防爆手機是什么?能用普通手機改裝嗎?

在石油開采平臺的井架之上&#xff0c;在化工車間的反應釜旁&#xff0c;在煤礦深達千米的巷道中&#xff0c;一群特殊的工作人員正使用著看似普通的通訊設備。這些設備外殼上醒目的Ex防爆認證標志&#xff0c;揭示著其與眾不同的身份——防爆手機。這類專為易燃易爆環境設計的…

gem install報錯解析

報錯內容 [rootlocalhost ~]# gem install bundler Fetching: bundler-2.6.9.gem (100%) ERROR: Error installing bundler:bundler requires Ruby version > 3.1.0. The current ruby version is 2.5.0.解決方案&#xff08;任選其一&#xff09; 這個錯誤表明你當前的 Ru…

css 如何實現大屏4個占位 中屏2個 小屏幕1個

1、 使用grid.container {display: grid;grid-template-columns: repeat(4, 1fr);gap: 20px;border: 1px solid red;width: 400px;height: 400px;}media (max-width: 768px) {.container {grid-template-columns: 1fr;}}media (min-width: 768px) and (max-width: 992px) {.con…

Redis學習系列之—— JDHotKey 熱點緩存探測系統

一、為什么需要熱點緩存探測 在回答這個問題前&#xff0c;我們先考慮一下&#xff1a;為什么光用 Redis 還不夠&#xff0c;還需要使用本地緩存&#xff1f; 一般來說&#xff0c;Redis 集群的性能能抗住幾十萬并發&#xff0c;能夠應付大部分情況。但對于一些頭部 APP&#x…

Linux 安全加固

Linux 安全加固需要從??用戶權限、系統服務、網絡防護、日志審計、文件系統、訪問控制??等多個維度入手&#xff0c;目標是減少攻擊面、限制未授權訪問、提升系統健壯性。以下是??詳細步驟實操示例??&#xff0c;覆蓋主流 Linux 發行版&#xff08;如 CentOS/Ubuntu&am…

【Docker#2】容器歷史發展 | 虛擬化實現方式

一、前言 – 容器技術發展史 容器技術是現今計算技術的重要組成部分&#xff0c;其發展歷程可以追溯到很早的計算機系統提供的進程隔離工具。以下是容器技術的發展歷程&#xff0c;其中涵蓋了從早期的進程隔離技術到現代云計算和云原生的演變&#xff1a; ① Jail 時代 1979 年…

React + Mermaid 圖表渲染消失問題剖析及 4 種代碼級修復方案

Mermaid 是一個流行的庫&#xff0c;它可以將文本圖表&#xff08;例如 graph LR; A-->B;&#xff09;轉換為 SVG 圖表。在靜態 HTML 頁面中&#xff0c;Mermaid 會查找 <pre class"mermaid"> 代碼塊&#xff0c;并在頁面加載時將它們替換為渲染后的圖表。它…

[Element]修改el-pagination背景色

[Element]修改el-pagination背景色 代碼 <el-pagination:current-page.sync"queryParams.current":page-size.sync"queryParams.size":page-sizes"[10, 20, 50, 100]"layout"prev, pager, next, jumper, sizes":total"queryP…

Docker 可用鏡像列表

Docker 鏡像源列表&#xff08;7月15日更新-長期&免費&#xff09;_dockerhub國內鏡像源列表-CSDN博客