中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux系統服務搭建之Apache

發布時間:2020-09-07 13:37:26 來源:網絡 閱讀:498 作者:夜風狂1102 欄目:建站服務器

1、  www: world  wide  web 萬維網

http   協議超文本傳輸協議

HTML語言: 超文本標識語言 index.html

2、 URL:統一資源定位: 協議+域名:端口+網頁文件名

http://www.baidu.com:80/phpmyadmin/index.php

3 搭建www的服務器的方法

windows   IIS  + asp  + SQLserver

IIS: Internet  Information server

Linux   apache+mysql+php

     nginx

 

一、相關文件

apache配置文件    

源碼包安裝:/usr/lcoal/apache2/etc/httpd.conf(主配置文件)

            /usr/local/apache/etc/extra/*.conf(子配置文件)

rpm包安裝:/etc/httpd/conf/httpd.conf

網頁保存位置:

源碼包:     /usr/local/apache2/htdocs/

rpm包安裝:  /var/www/html/

日志保存位置

源碼包:/usr/local/apache2/logs/

rpm包: /var/log/httpd/

 

 二、配置文件

         注意:apache配置文件嚴格區分大小寫

1、  針對主機環境的基本配置

ServerRoot   apache主目錄 

/usr/local/apache2

Listen       監聽端口   :80

LoadModule   加載的相關模塊      php5

       

User

Group        用戶和組

ServerAdmin  管理員郵箱

ServerName

服務器名(沒有域名解析時,使用臨時解析。默認不開啟)

ErrorLog "logs/error_log   錯誤日志

CustomLog "logs/access_log" common  正確訪問日志

DirectoryIndex index.html index.php  

默認網頁文件名,優先級順序

Include  etc/extra/httpd-vhosts.conf    

子配置文件中內容也會加載生效

    

2 主頁目錄及權限

 

DocumentRoot "/usr/local/apache2//htdocs"

  #網頁文件存放目錄(默認)

<Directory"/usr/local/apache2//htdocs">

  #定義指定目錄的權限

 

Options Indexes FollowSymLinks

     #options

     None:     沒有任何額外權限

     All:   所有權限

Indexes: 瀏覽權限(當此目錄下沒有默認網頁文件時,顯示目錄內容)

  FollowSymLinks:準許軟連接到其他目錄

 

AllowOverrideNone

#定義是否允許目錄下

.htaccess文件中的權限生效

None:.htaccess中權限不生效

All:文件中所有權限都生效

AuthConfig:文件中,只有網頁認證的權限生效。

 

Require all granted   訪問控制列表

        #定義此目錄的允許訪問權限

以下5個例子都是在Require allgranted緊下面插入(很重要)

例1:   僅允許IP為192.168.1.1的主機訪問

<RequireAll>

      Require all  granted

      Require ip 192.168.1.1

</RequireAll>

例2: 僅允許192.168.0.0/24網絡的主機訪問

<RequireAll> 

      Require all  granted 

      Require ip 192.168.1.0/24

</RequireAll> 

 例3:    禁止192.168.1.2的主機訪問,其他的都允許訪問,

<RequireAll>

      Require all  granted

      Require not ip 192.168.1.2

</RequireAll>

 4:    允許所有訪問,

Require all  granted         

 5:    拒絕所有訪問,

Require all  denied

 

三、四個小實驗

實驗環境:

  使用lamp環境安裝好的apache進行試驗

 

 安裝完成后,先啟動apache進行服務驗證,是否安裝成功,并且主頁是否可以訪問。

  注:發現啟動服務報錯:AH00558: httpd: Could not reliably determine the server's fullyqualified domain name, using localhost.localdomain. Set the 'ServerName'directive globally to suppress this message

解決辦法:打開主配置文件httpd.conf

搜索ServerName     (約在200行左右)

修改為 ServerName  localhost:80(并且去掉前面的#注釋)

 

 實驗一:目錄別名

可以使特定的網站程序不出現在網站根目錄下面,而這樣的話,就可以避免和原來的程序本身發生混淆和沖突;縮短網頁目錄的縱深,減少URL的長度。

 

1.     打開apache主配置文件

#Includeetc//extra/httpd-autoindex.conf (將#號去掉)

2.     進到子配置文件目錄extra下,打開httpd-autoindex.conf

仿照例子寫一個別名:

Alias  /a/ "/www/a/"   #實際目錄結束要有/

<Directory"/www/a/">

    Options Indexes MultiViews

    AllowOverride None

    Require all granted

</Directory>

在/www/a/目錄下手動創建index.html文件

 

3.     將apache服務重啟:

/usr/local/apache2/bin/apachectlstop

/usr/local/apache2/bin/apachectlstart

注:重啟源碼包安裝的apache需要先關閉,再啟動。

 

4.     驗證試驗結果:

打開瀏覽器輸入   服務器IP/a/ (最后的“/”必須有)

實驗二:用戶認證

  提高網站安全性,保護個別頁面的信息,限制特定目錄只有指定用戶可以訪問。

1.打開主配置文件在最下面添加:

<Directory"/usr/local/apache2/htdocs/baohu">  #被保護目錄

    Options Indexes

    AllowOverride All   #(開啟權限認證文件.htaccess)

    Require all granted

</Directory>

2.在指定目錄下創建權限文件:

cd  /usr/local/apache2/htdocs/baohu 

Vi   .htaccess      #添加下面的內容

AuthName"50 docs"   #提示信息

AuthTypebasic       #加密類型

AuthUserFile/usr/local/apache2/htdocs/baohu/apache.passwd

#密碼文件,文件名自定義。(但是路徑要對,使用絕對路徑)

requirevalid-user     #允許密碼文件中所有用戶訪問

3.使用命令生成密碼文件apache.passwd,加入允許訪問的用戶。(此用戶和系統用戶無關

Htpasswd

–c /usr/local/apache2/htdocs/baohu/apache.passwd test1

-c 建立密碼文件,只有添加第一個用戶時,才能-c

htpasswd 

-m /usr/local/apache2/htdocs/baohu/apache.passwd  test2

-m  再添加更多用戶時,使用-m參數

4. 驗證訪問:(自己手動去目錄下創建index.html文件)

瀏覽器輸入 服務器IP/baohu/index.html

 

實驗三:***虛擬主機***

虛擬主機的分類:

1)   基于IP的虛擬主機:一臺服務器,多個ip,搭建多個網站

  Ifconfig  eth0:0 IP      #建立網卡子端口

2)   基于端口的虛擬主機:一臺服務器,一個ip,搭建多個網站,每個網絡使用不同端口訪問

3)   基于名字的虛擬主機:一臺服務器,一個ip,搭建多個網站,每個網站使用不同域名訪問

1.     實驗搭建(準備工作)

a.   域名解析:準備兩個域名

www.sohu.com   

www.sina.com

b.   沒搭建DNS,只能手動添加到本地hosts文件內進行解析

  Windows系統中:C:\WINDOWS\system32\drivers\etc\hosts

  Linux系統中:/etc/hosts

c.   網站主頁目錄規劃

在/htdocs/目錄下分別創建sohu 和 sina 兩個目錄

并且在分別在新建目錄內創建index.html文件(分別寫不一樣的內容

2.   實驗流程(修改配置文件

A.   vi  /usr/local/apache2/etc/httpd.conf 

#修改主配置文件開啟文件關聯

Include etc//extra/httpd-vhosts.conf  #此行取消注釋

 

B.   vi  /usr/local/apache2/etc/extra/httpd-vhosts.conf

  #添加下方內容(添加之前先把原先存在的示例刪除掉

<Directory"/usr/local/apache2/htdocs/sina">

Options Indexes

AllowOverride None

Require all granted

</Directory>

 

<Directory "/usr/local/apache2/htdocs/sohu">

Options Indexes

AllowOverride None

Require all granted

</Directory>

 

<VirtualHost 192.168.150.253>       #虛擬主機標簽

ServerAdmin webmaster@sina.com      #管理員郵箱

DocumentRoot "/usr/local/apache2/htdocs/sina"  #網站主目錄

ServerName www.sina.com          #完整域名

ErrorLog "logs/sina-error_log"      #錯誤日志

CustomLog "logs/sina-access_log" common  #訪問日志

</VirtualHost>

 

<VirtualHost 192.168.150.253>

ServerAdmin webmaster@sohu.com

DocumentRoot "/usr/local/apache2/htdocs/sohu"

ServerName www.sohu.com

ErrorLog "logs/sohu.com-error_log"

CustomLog "logs/sohu.com-access_log" common

</VirtualHost>

 

C.   重啟服務,驗證結果

Windows 下:瀏覽器下輸入兩個不同的域名驗證網頁內容

Linux下:通過elinks命令驗證:elinks 域名

實驗四:rewrite重寫功能

 URL中輸入一個地址會自動跳轉為另一個,多用于網站更換或者添加新域名。

實驗要求:

A 虛擬主機能正常訪問

B 打開主配置文件開啟重寫模塊

             LoadModule rewrite_module modules/mod_rewrite.so   #取消注釋

 

域名跳轉實驗:

1.   修改虛擬主機配置文件

vi  */extra/httpd-vhosts.conf

<Directory"/usr/local/apache2/htdocs/sina">

Options Indexes FollowSymLinks

AllowOverride All

Require all granted

</Directory>

 

2.   創建規則匹配文件

vi  */.htaccess       #在指定的網站網頁目錄下創建

RewriteEngine on

#開啟rewrite功能

RewriteCond %{HTTP_HOST} www.sina.com

#把以www.sina.com  開頭的內容賦值給HTTP_HOST變量

RewriteRule  .*   http://www.sohu.com

#.*  輸入任何地址都跳轉到http://www.sohu.com

 

3.   重啟服務器,進行訪問驗證

靜態向動態跳轉:

1.   修改虛擬主機配置文件

vi */extra/httpd-vhosts.conf

<Directory "/usr/local/apache2/htdocs/sohu">

Options Indexes FollowSymLinks

AllowOverride All

Require all granted

</Directory>

2.   創建規則文件

vi  */.htaccess

RewriteEngine on

RewriteRule index(\d+).html index.php?id=$1

#輸入index(數值).html時,跳轉到index.php文件

3.   重啟服務,進行訪問驗證

驗證方式:在*/htdocs/sohu/目錄下新建index.php文件

訪問www.sohu.com/index(數值).html看訪問的是否是你的index.php的網頁

注:靜態網頁向動態網頁跳轉這個實驗,只有完整的lamp環境下才能訪問。

 

四、常用子配置文件

 

httpd-default.conf    #apache線程控制,必須開啟

Timeout 300    #超時時間

KeepAlive On   

#開啟線程控制(不開啟的話用戶訪問頁面會產生一個進程,訪問其他頁面會產生另一個進程,這樣的話一個用戶會產生好多個進程,會降低apache性能。開啟此項,當用戶訪問網站時會產生一個進程,打開其他頁面時會產生線程,保證了一個用戶只產生一個進程。網站此項功能必須開啟。)

MaxKeepAliveRequests 100   #最大線程連接數

 

httpd-info.conf  #apache狀態統計

<Location /server-status>

SetHandler server-status

Order deny,allow

Deny from all

Allow from .example.com

</Location>

#通過訪問www.domain.com/server-status可以查看apache狀態。如果頁面顯示not found 則需要修改目錄權限,在Deny from all下加上allow from ip(允許的ip)。

httpd-manual.conf   #apache幫助文檔

通過訪問www.domain.com/manual 查看apache幫助文檔,一般為英文,沒用,可以到apache官網下載幫助文檔。

 

httpd-languages.conf  #語言編碼

要使其生效需要在主配置文件中打開,如果中文亂碼不是瀏覽器編碼的原因可能是此配置文件注釋沒打開。

 

五、yum安裝apache后的虛擬主機

目的:實現apache的虛擬主機DNS的搭配使用

應用技術基于域名的虛擬主機  和  基于IP的虛擬主機

前提:1、一臺雙網卡的WEB服務器,eth0-192.168.115.195

          eth2-192.168.115.199

      2、一臺DNS服務器eth0-192.168.115.194

      3、一臺客戶機192.168.115.200

5.1、規劃

 

網站               IP          DocumentRoot      ServerAdmin
---------------------------------------------------------------------www.163.com     192.168.115.195   /www/163.com      www.163.com
www.sina.com     192.168.115.195   /www/sina.com     www.sina.com
www.sohu.com     192.168.115.195   /www/sohu.com     www.sohu.com
www.baidu.com    192.168.115.199   /www/baidu.com   www.baidu.com
www.baidu.com
是基于IP的
---------------------------------------------------------------------

5.2、配置DNS服務器

5.2.1、配置本地yum源,安裝軟件bind

啟動服務service  named  start

5.2.2、配置網卡服務并重啟網絡服務

Linux系統服務搭建之Apache
service  network  restart

 

5.2.3、配置主配置文件named.conf

刪除其他所有多余行,只保存下面的內容

 Linux系統服務搭建之Apache      






5.2.4、配置數據配置文件

 

創建相關域名的正向解析文件并更改所有者為 named

Linux系統服務搭建之Apache

 配置各個相關域名的正向解析文件

163.com

Linux系統服務搭建之Apache

 sina.com

Linux系統服務搭建之Apache

 

Sohu.com

Linux系統服務搭建之Apache

 

Baidu.com(基于IP的虛擬主機)

Linux系統服務搭建之Apache

 重啟DNS服務   service  named restart


5.3、配置115.200客戶機測試

 

 此處使用的是Win客戶機,配置如下:

Linux系統服務搭建之Apache

 

測試

Linux系統服務搭建之Apache

5.4、配置apache服務器

5.4.1、配置網卡并重啟網絡服務

Eth0      

Linux系統服務搭建之Apache

 

Eth2

Linux系統服務搭建之Apache

重啟網絡服務service  network  restart

 

5.4.2、配置本地yum源,安裝httpd

 yum   -y   install  httpd

 service  httpd   start

 

5.4.3、創建相關目錄及主頁

 Linux系統服務搭建之Apache

實現重啟服務時不出現warning信息

vi   /etc/httpd/conf/httpd.conf
ServerName  www.example.com:80   //改成192.168.115.195:80

 配置Apache實現虛擬主機
 vi  /etc/httpd/conf/httpd.conf

NameVirtualHost *:80//  改為NameVirtualHost 192.168.115.195:80IP是本機的IP
NameVirtualHost 192.168.115.195:80支持基于主機名的虛擬主機 


vi /etc/httpd/conf/httpd.conf 
主配置文件最下面添加以下內容

Linux系統服務搭建之Apache




  5.4.4、測試驗證

Linux系統服務搭建之Apache




向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

盐津县| 平昌县| 郁南县| 龙江县| 江口县| 湄潭县| 特克斯县| 临西县| 远安县| 烟台市| 揭西县| 来安县| 新昌县| 焉耆| 通海县| 博罗县| 石台县| 龙山县| 光泽县| 江北区| 新津县| 香河县| 仙游县| 云阳县| 镇沅| 高邑县| 新乡县| 东兴市| 云南省| 镇原县| 剑川县| 泸定县| 宁津县| 饶河县| 文安县| 门源| 长沙县| 吉安县| 右玉县| 左云县| 楚雄市|