1. 程式人生 > >apache的http的常用安裝配置

apache的http的常用安裝配置

需求一:安裝獨立的web站點

服務端配置檔案:

/etc/httpd/conf/httpd.conf

/etc/httpd/conf.d/*.conf

預設首頁檔案:index.html

http網站文件的預設根目錄:/var/www/html

URL(Uniform  Resouce Locator,統一資源定位器)網址的基本組成:

http://伺服器地址[:埠號]/目錄/檔名

具體配置:

[[email protected] ~]# yum -y install httpd

[[email protected] ~]# cd /var/www/html/

[[email protected]

html]# cat index.html 
ttttt
[[email protected] html]# systemctl restart httpd
[[email protected] html]# systemctl enable httpd
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.

[[email protected] ~]# curl http://192.168.4.11
ttttt


需求二:虛擬Web主機的部署

虛擬主機平臺

同一套httpd平臺上跑很多個網站

多個域名---不同的網頁內容

網頁目錄由<virtualHost>區段配置定義

多個虛擬主機站點的典型設定(/etc/httpd/conf.d/*.conf)

<VirtualHost *:80>
       ServerName  網站1的FQDN
       DocumentRoot  網站1的網頁根目錄
</VirtualHost>
<VirtualHost *:80>
       ServerName  網站2的FQDN
       DocumentRoot   網站2的網頁根目錄
</VirtualHost>

具體的配置

部署網頁文件

[[email protected] ~]# mkdir /var/www/virtual
[[email protected] ~]# useradd zhu
[[email protected] ~]# setfacl -m u:zhu:rwx /var/www/virtual/
[[email protected] ~]# cd /var/www/virtual/
[[email protected] virtual]# echo I am a virtual one! > index.html

[[email protected] ~]# cd /etc/httpd/conf.d/
配置虛擬主機http://www0.example.com/

[[email protected] ~]# cd /etc/httpd/conf.d/
[[email protected] conf.d]# vim /etc/httpd/conf.d/01-www0.conf

<VirtualHost  *:80>
        ServerName  www0.example.com
        DocumentRoot  /var/www/virtual
</VirtualHost>

[[email protected] conf.d]#  systemctl  restart  httpd
[[email protected] ~]# curl http://www0.example.com/
I am a virtual one!

完善原始站點 http://zhuhaiyan.example.com

[[email protected] ~]# cd /etc/httpd/conf.d/
[[email protected] conf.d]# vim 00-default.conf

<VirtualHost  *:80>
        ServerName  zhuhaiyan.example.com
        DocumentRoot  /var/www/html
</VirtualHost>

[[email protected] conf.d]# systemctl restart httpd

[[email protected] conf.d]# curl http://zhuhaiyan.example.com/
ttttt

需求三:配置網頁內容訪問


配置Web內容的訪問控制需要新增Directory區段。

<Directory  "父目錄路徑">
     Require  all  denied                                  //上層目錄拒絕任何訪問
</Directory>
<Directory  "子目錄1路徑">
     Require  all  granted                             //子目錄1允許任何訪問
</Directory>
<Directory  "子目錄2路徑">
     Require  ip  IP或網段地址 .. ..                     //子目錄2允許少數客戶機
</Directory>

部署網頁子目錄及文件

[[email protected] ~]# cd /var/www/html/private/
[[email protected] private]# echo 'Private Site' > index.html

[[email protected] private]# vim  /etc/httpd/conf.d/00-default.conf

<VirtualHost  *:80>
        ServerName  zhuhaiyan.example.com
        DocumentRoot  /var/www/html
</VirtualHost>
<Directory  "/var/www/html/private">
        Require  ip  127.0.0.1  ::1  192.168.4.11
</Directory>
 

[[email protected] ~]# curl http://zhuhaiyan.example.com/private/
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>403 Forbidden</title>
</head><body>
<h1>Forbidden</h1>
<p>You don't have permission to access /private/
on this server.</p>
</body></html>

[[email protected] ~]# curl http://zhuhaiyan.example.com/
ttttt
[[email protected]  ~]# curl http://zhuhaiyan.example.com/private/
Private Site


使用自定義web根目錄

建立網頁目錄

[[email protected] ~]# mkdir /webroot
[[email protected] ~]# cd /webroot/
[[email protected] webroot]# echo "自定義的web網頁" > index.html
調整虛擬站點的配置

[[email protected] webroot]# vim /etc/httpd/conf.d/00-default.conf 

<VirtualHost  *:80>
        ServerName  zhuhaiyan.example.com
        DocumentRoot  /webroot
</VirtualHost>
<Directory "/webroot">
        Require all granted
</Directory>

[[email protected] webroot]# systemctl restart httpd
[[email protected] webroot]# chcon -R --reference=/var/www /webroot/
[[email protected] webroot]# ls -Z /webroot/index.html 
-rwxrwxrwx. root root system_u:object_r:httpd_sys_content_t:s0 /webroot/index.html
[[email protected] webroot]# systemctl restart httpd
[[email protected] webroot]# curl http://zhuhaiyan.example.com
自定義的web網頁

需求五:部署並測試WSGI站點

為httpd增加對python網頁程式的支援,可以安裝mod_wsgi模組。

部署動態網頁文件

建立動態網頁文件

部署webinfo.wsgi網頁程式

[[email protected] ~]# mkdir  /var/www/webapp0

[[email protected] ~]# cd /var/www/webapp0
[[email protected] webapp0]# vim webinfo.wsgi

安裝mod_wsgi模組軟體包
[[email protected] ~]# yum  -y  install  mod_wsgi

為新虛擬主機建立配置

[[email protected] ~]# vim  /etc/httpd/conf.d/02-webapp0.conf
Listen  8909
<VirtualHost *:8909>
        DocumentRoot  /var/www/webapp0
        ServerName  webapp0.example.com
        WSGIScriptAlias  /  /var/www/webapp0/webinfo.wsgi
</VirtualHost>

調整SELinux策略,允許Web服務使用8909埠
列出當前許可的Web埠:

[[email protected] ~]# semanage  port  -l  |  grep  ^http_port
http_port_t           tcp      80, 81, 443, 488, 8008, 8009, 8443, 9000

新增新的Web埠:

[[email protected] ~]# semanage  port  -a  -t  http_port_t  -p  tcp  8909

確認配置結果:
[[email protected] ~]# semanage  port  -l  |  grep  ^http_port
http_port_t           tcp      8909, 80, 81, 443, 488, 8008, 8009, 8443, 9000

重啟系統服務httpd

[[email protected] ~]# systemctl  restart  httpd
[[email protected] ~]# netstat  -antpu  |  grep  httpd          //確認已監聽8909埠
tcp6       0      0 :::443                  :::*                    LISTEN      2477/httpd          
tcp6       0      0 :::8909                 :::*                    LISTEN      2477/httpd          
tcp6       0      0 :::80                   :::*                    LISTEN      2477/httpd   

步驟三:測試動態網頁效果

使用elinks或firefox訪問此動態站點http://webapp0.example.com:8909/。
多重新整理訪問幾次,每次看到的是動態網頁內容,內容並不固定。
[[email protected] ~]# elinks  -dump  http://webapp0.example.com:8909/
   UNIX EPOCH time is now: 1480184916.52                      //第1次訪問
[[email protected] ~]# elinks  -dump  http://webapp0.example.com:8909/
   UNIX EPOCH time is now: 1480184919.21                      //第2次訪問
[[email protected] ~]# elinks  -dump  http://webapp0.example.com:8909/

相關推薦

apache的http的常用安裝配置

需求一:安裝獨立的web站點 服務端配置檔案: /etc/httpd/conf/httpd.conf /etc/httpd/conf.d/*.conf 預設首頁檔案:index.html http網站文件的預設根目錄:/var/www/html URL(Unifo

docker虛擬化安裝配置常用命令

sta 80端口 ubuntu map 虛擬化 導出 6.5 關系 版本 一、Docker安裝配置 docker只有在centos6.5以上機器才能使用yum直接安裝,如果其他版本需要安裝centos擴展源epel。 docker官方文檔說要求Linux kernel至

SVN的安裝常用功能使用以及解決安裝配置過程中的一些錯誤

三種方式 安裝配置 ava -- 服務器 工作流程圖 例如 完成 網站 SVN簡介: SVN是Subversion的簡稱,是一個開放源代碼的版本控制系統,將工程代碼集中在服務器上進行一個統一的集中式管理,從而能夠方便地控制代碼版本,相較於RCS、CVS,它采用了分支管理系統

mongoDB的安裝,配置常用命令

技術 中新 ima jpg 圖片 命令 cmd b數 nbsp 1.安裝及配置 第一步 安裝 custom 用來修改安裝目錄 進入安裝目錄的bin文件,輸入cmd 再輸入mongo 如果出現下圖則表示安裝成功 D:\applay\mongoDB\bin是我的安裝目錄

安裝vscode 編輯python程式碼,需要的常用外掛安裝配置步驟,格式yapf 自動提示錯誤flake8

用VSCode寫python的正確姿勢 最近在學習python,之前一直用notepad++作為編輯器,偶然發現了VScode便被它的顏值吸引。用過之後發現它啟動快速,外掛豐富,下載安裝後幾乎不用怎麼配置就可以直接使用,而且還支援markdown

Ansible安裝配置常用模組簡介

Ansible是一種整合IT系統的配置管理, 應用部署, 執行特定任務的開源平臺。 它基於Python語言實現, 部署只需在主控端部署Ansible環境, 被控端無需安裝代理工具, 只需開啟SSH, 讓主控端通過SSH祕鑰認證對其進行所有的管理監控操作。相對於SaltStack,

Linux 環境下常用指令(含JDK安裝配置)總結

一、基本操作 cd:進入選單,可接相對路徑或全路徑 pwd : 顯示當前所在資料夾 ls : 展示當前資料夾下的所有檔案和資料夾 cp [-r] 檔名A 檔名B/路徑:複製檔案A到檔案B,-r表示複製資料夾 mv 檔名A 檔名B/路徑:給檔案A改名/剪下到指定路徑 rm [-f] 檔名:刪除

Kali Linux常用服務配置教程安裝配置DHCP服務

Kali Linux常用服務配置教程安裝及配置DHCP服務 在Kali Linux中,預設沒有安裝DHCP服務。下面將介紹安裝並配置DHCP服務的方法。 1.安裝DHCP服務 在Kali Linux中,用來提供DHCP服務的安裝包名為isc-dhcp-server。所以,執行命令如下所示: [emai

安裝vscode 編輯python程式碼,需要的常用外掛安裝配置步驟,格式yapf 自動提示錯誤flake8

最近在學習python,之前一直用notepad++作為編輯器,偶然發現了VScode便被它的顏值吸引。用過之後發現它啟動快速,外掛豐富,下載安裝後幾乎不用怎麼配置就可以直接使用,而且還支援markdown。當然,最主要的還是好看:p 效果圖: 安裝python外掛 開啟VScode,Ctrl+p 輸入

Java學習筆記(一)--常用的DOS命令 JDK的下載和安裝 配置path環境變數

常用的DOS命令 1.碟符切換 碟符:然後回車。 2.列出當前檔案及資料夾 dir 然後回車 3.建立目錄 md 目錄名稱 4.刪除目錄 rd 目錄名稱 5.進入指定目錄 -單集目錄

2018超詳細sublime text3+python3.x安裝配置教程(附常用外掛安裝教程)

導讀 本文是關於2018年7月最新版sublime text3+pythin3.x下載及安裝配置教程,sublime text3版本為3176,python版本為3.7,安裝環境是基於windows10。主要內容為sublime text3的下載,安裝,配置基本外掛和python3的下載,安裝及配置

Kubernetes之kubectl命令列工具簡介、安裝配置常用命令

kubectl概述 kubectl是Kubernetes叢集的命令列工具,通過kubectl能夠對叢集本身進行管理,並能夠在叢集上進行容器化應用的安裝部署。執行kubectl命令的語法如下所示: $ kubectl [command] [TYPE] [NAME] [flags] coma

Windows下安裝Ubuntu16.04 及 Ubuntu常用軟體配置 完全版 ~吐血整理!

前言 大家好,由於我專案需要,需要裝Ubuntu系統,本以為很簡單,結果花費了一週的時間來熟悉系統安裝,環境配置和軟體安裝。由於是新手,在學習過程中遇到了很多問題,所以查閱了大量的資料,感謝網路給我們帶來的便捷以及網友們的分享。我的最初始的系統配置,如下圖所示

9,Linux下的python3,virtualenv,Mysql、nginx、redis安裝配置 常用服務安裝部署

常用服務安裝部署   學了前面的Linux基礎,想必童鞋們是不是更感興趣了?接下來就學習常用服務部署吧! 安裝環境: centos7 + vmware + xshell  MYSQL(m

redis學習筆記01 — 基本介紹、安裝配置常用命令

redis——NoSQL的一種 為了解決高併發、高可用、高擴充套件、大資料儲存等一系列問題而產生的資料庫解決方案,就是NoSQL NoSQL,非關係型資料庫,全名:Not Only Sql,它不能代替關係型資料庫,只能作為關係型資料庫的一個良好補充。 redis 簡介 是使用

CentOS7常用軟體安裝配置說明

安裝Centos7的最小安裝包後,很多功能沒有,可以參照下邊的內容安裝。 1、ifconfig命令沒有,需要安裝net-tools。       yum install -y net-tools  

MariaDB資料庫的安裝配置常用操作

1. 認識一下MariaDB MariaDB是由MySQL的原始開發人員建立的MySQL的流行分支, 它支援小資料處理任務和企業需求。 MariaDB提供與MySQL等相同的功能。 MariaDB的重要特性 1.所有MariaDB都在GPL,LGPL或B

Java學習系列(一)Java的執行機制、JDK的安裝配置常用命令詳解

Java的執行機制:Java源程式經過編譯器編譯成平臺無關的位元組碼,位元組碼由虛擬機器解釋執行,虛擬機器將每一條要執行的位元組碼傳送給特定平臺的直譯器,直譯器將其翻譯成相應平臺上的機器碼,然後執行在該平臺上,又由於執行時依然保留了解釋這樣就保證了Java程式能跨平臺了。J

(四): Flink1.6.1 standalone叢集模式安裝部署,幾個常用引數配置

NameNode檢查點異常 安裝flink之前,觀察到一個NameNode檢查點異常: 沒去找官方解釋,按照此文的第4點解決了問題: namenode的Cluster ID 與 secondnamenode的Cluster ID 不一致,對比/dfs/nn

linux常用(一)linux 安裝配置 jdk之 找不到安裝檔案目錄及source /etc/profile 報unexpected end of file 錯誤 解決

引言:  linux 安裝配置 jdk 應該算是一個很基本的東西。但是我到現在才自己第一次 正式安裝。果然出現了問題。。 問題就是 安裝之後 找不到 安裝路徑 ,進而沒法配置環境變數。 現象如下: 提示 already installed 之後  用find命令查