首頁 資料庫 mysql教程 LinuxApacheWeb服务器(续一)

LinuxApacheWeb服务器(续一)

Jun 07, 2016 pm 03:16 PM
伺服器 配置

四、配置Apache基础篇,让WWW 服务器 跑起来 Apache 服务器 软件的配置文件主要有:“access.conf”:用于设置系统中的存取方式和环境;“httpd.conf”:用于设置 服务器 启动的基本环境;“srm.conf”:主要用于做文件资源上的设定;“mime.type”:记录Apac

四、配置Apache基础篇,让WWW服务器跑起来 Apache服务器软件的配置文件主要有:“access.conf”:用于设置系统中的存取方式和环境;“httpd.conf”:用于设置服务器启动的基本环境;“srm.conf”:主要用于做文件资源上的设定;“mime.type”:记录Apache服务器所能识别的MIME格式。

在具体讲解之前,我们必须告诉大家,Apache已经在安装时就采用了一系列的缺省值,已经让WWW服务器跑起来了。你只需要将装上Linux+Apache的主机联入Internet,然后将主页存放到“/home/httpd”目录下即可。

下面介绍一些最主要的配置选项的含义,以便大家用最小的精力、最小的配置准备好服务器

4.1 httpd.conf

httpd.conf是主配置文件。它告诉服务器将如何运行。

一、最重要的配置选项ServerType standalone | inetd

这个配置选项指定如何运行WEB服务器。Apache可以使用两种方法来运

服务器:standalone(独立的)和inetd(由inetd运行的)。

standalone参数表示WEB服务进程以一个单独的守候进程的方式在后台侦听是否有客户端的请求,如果有就生成一个子进程来为其服务。

inetd参数表示WEB服务不是以一个单独的守候进程的形式支持。而是由Inetd这个超级服务器守候进程进行代劳,当它收到一个客户端的WEB服务请求的时候,再启动一个WEB服务进程为其服务。

从功能的角度看,这两种方法几乎是相同的。但它们之间实际有很大区别,区别在于服务器的性能。一个由inted运行的服务器进程在它结束对请求服务的同时立刻退出。而在standalone模式下,子WWW服务器进程在退出之前要挂起一段时间,这就给它们提供了机会,可以重新用来服务新的请求。

在standalone模式下,不存在对每个请求启动新进程的开销,所以它的效率更高;而inetd模式被认为比standalone模式更具安全性。

standalone模式:

此种模式下,WWW服务器侦听特定端口的连接请求。当客户机发出到特

定端口地址的连接请求时,主服务器进程启动子WWW服务进程来服务该请求。如下图所示:

图2 独立服务器

另外还需要告诉主服务器进程侦听的特定端口地址,使用命令:

Port [number] (缺省值为80)

inetd模式

inetd是侦听有小于1024的端口连接请求的Internet守护进程(一个服务器进程)。与前面的方法不同,当客户系统发出到WWW服务器的连接请求时,inetd启动一个WWW服务器进程,由此进程服务此请求,完成服务后即退出。如下图所示:

图3 由inetd启动的服务器

如果选择通过inetd服务器来运行Apache,需要编辑/etc/inetd.conf文件为Apache添加一条新的记录:

httpd stream tcp nowait httpd /etc/httpd/bin/httpd ?f /etc/httpd/conf/httpd.conf

修改了/etc/inetd.conf文件后,就需要修改/etc/services中添加一行

httpd 80/tcp httpd

做完以上修改后,需要重新启动inetd进程。首先,使用以下命令取得inetd的进程ID:

ps auxw |grep inetd

然后执行命令:kill ?HUP

在RedHat Linux中,默认是采用inetd服务器来运行Apache,所以只要你在安装时选择了httpd,以上工作在安装时就已经代你完成了。

二、其它配置选项

Server Admin命令,用来设置WEB管理员的E-Mail地址。这个地址会出现在系统连接出错的时候,以便访问者能够将情况及时地告知WEB管理员。

命令格式: Server Admin [you E-Mail address]

例:Server Admin admin@xxx.com

ErrorLog命令,用来指定错误记录文件名称和路径。

命令格式: ErrorLog [log filename]

例:ErrorLog /var/httpd/error.log

Timeout命令,只要客户端超过这里设定的秒数还没有完成一个请求的话,服务端将终止这次请求服务。如果网络速度较慢的话,建议在此设置较大的数值。以给客户端更多机会。

命令格式: Timeout [second]

例:Timeout 120

ServerRoot命令,它指定在何处保存服务器的配置、错误及日志文件。

命令格式: ServerRoot [fully qualified path name]

例:ServerRoot /etc/httpd

ServerName命令,它配置服务器的Internet主机名

命令格式: ServerName [host name]

例:ServerName www.xxx.com

4.2 srm.conf

srm.conf是资源配置文件,用它来告诉服务器你想在WWW站点上提供什么资源以及在哪里和如何提供它们。

DocumentRoot命令,用来指定主文档的地址。

命令格式: DocumentRoot [Path]

例:DocumentRoot /home/httpd/html

UserDir命令,用来指定个人主页的位置。如果你有一个用户test,那么它主目录是“/home/test”,当客户端输入“http://yourdomain/~test”,系统就会到对应的目录“/home/test/UserDir/”中去寻找。其中“UserDir”就是在UserDir命令中设置的指定目录。

命令格式: UserDir [Path]

例: UserDir Public_html

DirectoryIndex命令,用来声明首页文件名称。一般地,我们使用“index.html”或“index.htm”作为首页的文件名。如果这样设置后,那么客户端发出WEB服务请求时,将首先调入的主页是在指定目录下文件“index.html”或“index.htm”。

命令格式: DirecotryIndex [filename]

例:DirecotryIndex index.html index.htm

ScriptAlias令,为脚本程序目录起个别名,具体可见4.7小节。

命令格式: ScriptAlias [/alias/] [fullly qualified path for script directory]

例: ScriptAlias /cgi-bin/ /home/httpd/cgi-bin

4.3 access.conf的配置

access.conf文件用来设置WWW站点上诸如文件、目录和脚本项目的访问权限。该文件的第一段非注释部分如下:

Option Indexes Includes ExecCGI FollowSymLink

AllowOverride None

Order allow , deny

allow from all

大家应该注意到,这一个部分是以开始,以结束的。这表示在其中间的部分都是针对指定目录“/home/httpd/html”而言的。

1.Option命令有很多的参数,各个参数的意义如下所示:

All 准许以下所有功能(MultiViews除外);

MultiViews 准许内容协商的Multiviews;

Indexes 若该目录下无index文件,则准许显示

该目录下的文件以供选择;

IncludesNOEXEC 准许SSI(Server-side Includes),但不可

使用#exec和#include功能;

Includes 准许SSI;

FollowSymLinks 准许符号链接到其他目录;

ExecCGI 准许该目录下可以使用CGI。

2.而AllowOverride命令则是用来决定是否准许在“access.conf”文件中设定的权限是否可以被在文件“.htaccess”中设定的权限覆盖。它有两个参数:

All 准许覆盖;

None 不准许覆盖。

3.Order命令:用来设定谁能从这个服务器取得控制。它也有两个参数:

allow 可以取得控制;

deny 禁止取得控制。

现在我们一起来看看关于目录“/home/httpd/html”的设置的含义:它使得这个目录,如果不存在index.htm文件时,列出目录信息以供选择,准许SSI,允许执行CGI程序,开启了动态连接。它不允许再使用在文件“.htaccess”中设定来覆盖这里所设置的权限。使所有的人都可以取得控制。

该文件的第二段非注释部分如下:

Option ExecCGI

AllowOverride None

这个表示目录“/home/httpd/cgi”的设置为,当前目录下可以执行CGI程序。不允许再使用在文件“.htaccess”中设定来覆盖这里所设置的权限。

需要说明的是,不同的LINUX系统中,可以在这个文件中看到的信息不完全相同,但是根据这里给出的信息,大家可以参照命令的解释自行理解文件中的设置,以及根据自己的需要进行相应的修改。

4.4 使新的配置生效

在上面,我们可能已经根据新的需求更改了相应的配置选项,如果我们要

使得这个新的配置立即生效。我们就必须重新启动WEB服务进程。在LINUX中,我们可以十分方便地使用命令行来使得WEB服务进程重启。

/etc/rc.d/init.d/httpd restart
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

Linux系統中GDM的工作原理及配置方法 Linux系統中GDM的工作原理及配置方法 Mar 01, 2024 pm 06:36 PM

標題:Linux系統中GDM的工作原理及設定方法在Linux作業系統中,GDM(GNOMEDisplayManager)是一種常見的顯示管理器,用於控制圖形使用者介面(GUI)登入和使用者會話管理。本文將介紹GDM的工作原理和設定方法,以及提供具體的程式碼範例。一、GDM的工作原理GDM是GNOME桌面環境下的顯示管理器,負責啟動X伺服器並提供登入介面,使用者輸

如何將Dnsmasq設定為DHCP中繼伺服器 如何將Dnsmasq設定為DHCP中繼伺服器 Mar 21, 2024 am 08:50 AM

DHCP中繼的作用是將接收到的DHCP封包轉送到網路上的另一個DHCP伺服器,即使這兩台伺服器位於不同的子網路中。透過使用DHCP中繼,您可以實現在網路中心部署集中式的DHCP伺服器,並利用它為所有網路子網路/VLAN動態分配IP位址。 Dnsmasq是一種常用的DNS和DHCP協定伺服器,可設定為DHCP中繼伺服器,以協助管理網路中的動態主機設定。在本文中,我們將向您展示如何將dnsmasq配置為DHCP中繼伺服器。內容主題:網路拓樸在DHCP中繼上設定靜態IP位址集中式DHCP伺服器上的D

了解Linux Bashrc:功能、設定與使用方法 了解Linux Bashrc:功能、設定與使用方法 Mar 20, 2024 pm 03:30 PM

了解LinuxBashrc:功能、配置與使用方法在Linux系統中,Bashrc(BourneAgainShellrunco​​mmands)是一個非常重要的配置文件,其中包含了系統啟動時自動運行的各種命令和設定。 Bashrc文件通常位於使用者的家目錄下,是一個隱藏文件,它的作用是為使用者自訂設定Bashshell的環境。一、Bashrc的功能設定環境

用PHP建構IP代理伺服器的最佳實務指南 用PHP建構IP代理伺服器的最佳實務指南 Mar 11, 2024 am 08:36 AM

在網路資料傳輸中,IP代理伺服器扮演著重要的角色,能夠幫助使用者隱藏真實IP位址,保護隱私、提升存取速度等。在本篇文章中,將介紹如何用PHP建立IP代理伺服器的最佳實務指南,並提供具體的程式碼範例。什麼是IP代理伺服器? IP代理伺服器是位於使用者與目標伺服器之間的中間伺服器,它可作為使用者與目標伺服器之間的中轉站,將使用者的請求和回應轉發。透過使用IP代理伺服器

Linux系統中如何設定和安裝FTPS Linux系統中如何設定和安裝FTPS Mar 20, 2024 pm 02:03 PM

標題:Linux系統中如何配置和安裝FTPS,需要具體程式碼範例在Linux系統中,FTPS是一種安全的檔案傳輸協議,與FTP相比,FTPS透過TLS/SSL協議對傳輸的資料進行加密,提高了資料傳輸的安全性。在本文中,將介紹如何在Linux系統中設定和安裝FTPS,並提供特定的程式碼範例。步驟一:安裝vsftpd開啟終端,輸入以下指令安裝vsftpd:sudo

epic伺服器離線進不了遊戲怎麼辦? epic離線進不了遊戲解決方法 epic伺服器離線進不了遊戲怎麼辦? epic離線進不了遊戲解決方法 Mar 13, 2024 pm 04:40 PM

  epic伺服器離線進不了遊戲怎麼辦?這個問題想必很多小夥伴都有遇過,出現了此提示就是導致正版的遊戲無法啟動,那麼出現這個問題一般是網絡和安全軟體幹擾導致的,那麼應該怎麼解決呢,本期小編就來和大夥分享解決方法,希望今日的軟體教學可以幫助各位解決問題。  epic伺服器離線進不了遊戲怎麼辦:  1、很可能是被安全軟體幹擾了,將遊戲平台和安全軟體關閉在重啟。  2、其次就是網路波動過大,嘗試重啟一次路由器,看看是否有效,如果條件可以的話,可以嘗試使用5g移動網絡來進行操作。  3、然後有可能是更

win11電腦配置在哪裡看? win11電腦設定資訊怎麼找方法 win11電腦配置在哪裡看? win11電腦設定資訊怎麼找方法 Mar 06, 2024 am 10:10 AM

我們在使用win11系統的時候有時候會需要查看自己的電腦配置,但是也有不少的用戶們在詢問win11電腦配置在哪裡看?其實方法很簡單的,使用者可以直接的開啟設定下的系統訊息,然後就能查看電腦設定資訊。以下就讓本站來為使用者來仔細的介紹一下win11電腦設定資訊如何查找方法吧。 win11電腦設定資訊如何找出方法方法一:1、點選開始,開啟電腦設定。 3、在此頁面即可查看電腦設定資訊。 2.在指令提示字元視窗中,輸入systeminfo回車,即可查看電腦設定。

如何在伺服器上安裝 PHP FFmpeg 擴充功能? 如何在伺服器上安裝 PHP FFmpeg 擴充功能? Mar 28, 2024 pm 02:39 PM

如何在伺服器上安裝PHPFFmpeg擴充功能?在伺服器上安裝PHPFFmpeg擴充功能可以幫助我們在PHP專案中處理音視訊文件,實現音視訊文件的編解碼、剪輯、處理等功能。本文將介紹如何在伺服器上安裝PHPFFmpeg擴展,以及具體的程式碼範例。首先,我們需要確保伺服器上已經安裝了PHP以及FFmpeg。如果沒有安裝FFmpeg,可以依照下列步驟安裝FFmpe

See all articles