RedhatのインストールとApacheサービスの構成

1.一般的に使用されるインストールおよび管理コマンド

yum install  httpd   		#安装Apache,也就是httpd服务
systemctl start httpd  		#启动httpd服务
systemctl enable httpd  	#设置开机自动启动httpd服务
systemctl restart httpd  	#重启httpd服务

2、構成ファイルの説明

/etc/httpd/conf/httpd.conf 		#主配置文件
/etc/httpd/conf.d    			#子配置文件目录
/var/log/httpd/     			#日志文件目录(access.log error.log)
/etc/httpd/modules     		#模块文件的目录
/var/www/html       			#默认网站根目录

メイン構成ファイル(/etc/httpd/conf/httpd.conf)情報:
<> </>に含まれる構成情報はすべて地域構成情報であり、その他はグローバル構成情報です。

ServerRoot "/etc/httpd"   			#服务主目录
Listen 80    						#监听IP地址及端口号
Include conf.modules.d/*.conf    
User apache   	 				#运行httpd服务的用户
Group apache   					#运行httpd服务的用户组
ServerAdmin root@localhost    		#管理员邮箱
ServerName www.example.com:80 	#服务器域名,默认为注释

<Directory />
    AllowOverride none
    Require all denied
</Directory>

DocumentRoot "/var/www/html"   #网站数据根目录

<Directory "/var/www">
    AllowOverride None
    Require all granted
</Directory>

<Directory "/var/www/html">
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

<IfModule dir_module>
    DirectoryIndex index.html
</IfModule>

<Files ".ht*">
    Require all denied
</Files>

ErrorLog "logs/error_log"   #错误日志文件
LogLevel warn

<IfModule log_config_module>
    LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
    LogFormat "%h %l %u %t \"%r\" %>s %b" common

    <IfModule logio_module>
      LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
    </IfModule>
CustomLog "logs/access_log" combined     #访问日志文件
</IfModule>

<IfModule alias_module>
    ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
</IfModule>

<Directory "/var/www/cgi-bin">
    AllowOverride None
    Options None
    Require all granted
</Directory>

<IfModule mime_module>
    TypesConfig /etc/mime.types
    AddType application/x-compress .Z
    AddType application/x-gzip .gz .tgz
    AddType text/html .shtml
    AddOutputFilter INCLUDES .shtml
</IfModule>

AddDefaultCharset UTF-8

<IfModule mime_magic_module>
    MIMEMagicFile conf/magic
</IfModule>

EnableSendfile on
IncludeOptional conf.d/*.conf

Webサイトのディレクトリ構成情報について(例としてルートディレクトリを取り上げます):

<Directory "/var/www/html">
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

AllowOverride: .htaccessファイルに存在する命令のタイプを許可します(.htaccessファイルの名前は変更でき、ファイル名はAccessFileName命令によって決定されます)。値がNoneの場合、ディレクトリ内の.htaccessファイルが検索されないことを意味します。値がAllの場合、すべてのコマンドを.htaccessファイルで使用できることを意味します。

オプション:特定のディレクトリで使用する機能を設定します。複数の機能はスペースで区切ります。ExecCGIは、CGIスクリプトがこのディレクトリで実行できることを意味します。FollowSymLinksは、シンボリックリンクがこのディレクトリのファイルシステムで許可されることを意味します。インデックスは、ユーザーがディレクトリにアクセスしたときに、DirectoryIndexで指定されたホームページファイルが見つからないことを意味します。 (たとえば、index.html)次に、ディレクトリ内のファイルのリストをユーザーに返します。SymLinksIfOwnerMatchは、シンボリックリンクが使用されている場合にのみ、シンボリックリンクの所有者が実際のファイルの所有者と同じである場合にのみ可能であることを意味します。それらにアクセスします。

順序: 2つのアクセスルール(許可と拒否)のどちらがアクセス中に優先されるかを制御します。許可は、アクセスが許可されるホストのリストを表します(使用可能なドメイン名またはサブネット。例:192.168.0.0/16からの許可)。拒否。アクセスが拒否されたホストのリストを表します。

DirectoryIndex index.html index.htm index.php   #设置默认的主页文件名

3つの仮想ホスト構成

1.ドメインベースの仮想ホスティング

1)ドメイン名情報を構成する

[root@hollowman ~]# echo '192.168.100.100 bbs.hollowman.cn'  >>  /etc/hosts

2)ドメイン名に対応するサイトディレクトリとテストWebページを設定します

[root@hollowman ~]# mkdir /var/www/bbs
[root@hollowman ~]# echo bbs.hollowman.cn > /var/www/bbs/index.html

3)仮想ホスト情報を構成します。
仮想ホスト構成情報は、メイン構成ファイル(/etc/httpd/conf/httpd.conf)の任意の場所に追加できます。通常、Webサイトのデータルートディレクトリの後ろに配置され、後者の前に配置されます。構成ファイルのより明確な読み取り。

[root@hollowman ~]# vim /etc/httpd/conf/httpd.conf
......
DocumentRoot "/var/www/html"   #网站数据根目录
<VirtualHost 192.168.100.100>
    DocumentRoot "/var/www/bbs"
    ServerName "bbs.hollowman.cn"
    <Directory "/var/www/bbs">
        AllowOverride None
        Require all granted
    </Directory>
</VirtualHost>
......

4)httpdサービスを再起動します

[root@hollowman ~]# systemctl restart httpd
[root@hollowman ~]# systemctl enable httpd

5)アクセスするブラウザにドメイン名bbs.hollowman.cnを入力します
ここに画像の説明を挿入します

2.ポートベースの仮想ホスティング

1)ポートに対応するサイトディレクトリとテストWebページを設定します

[root@hollowman ~]# mkdir /var/www/8080
[root@hollowman ~]# echo ‘192.168.100.100:8080’ > /var/www/8080/index.html

2)ポートベースの仮想ホスト情報
を構成します。リスニングポート情報を構成する必要があることに注意してください。これは、前回構成したドメインベースの仮想ホスト情報と組み合わせることができます。

[root@hollowman ~]# vim /etc/httpd/conf/httpd.conf
......
DocumentRoot "/var/www/html"   #网站数据根目录
...基于域名的虚拟主机配置信息...
Listen 8080
<VirtualHost 192.168.100.100:8080>
    DocumentRoot "/var/www/8080"
    <Directory "/var/www/8080">
        AllowOverride None
        Require all granted
    </Directory>
</VirtualHost>
......

3)httpdサービスを再起動します

[root@hollowman ~]# systemctl restart httpd

4)ポート:192.168.100.100:8080でIPアドレスを入力します
ここに画像の説明を挿入します

第四に、ウェブサイトのルートディレクトリを変更します

Webサイトのルートディレクトリの変更にはSELinuxセキュリティポリシーが含まれるため、セキュリティコンテキストを変更する必要があります。「SElinuxStudyNotes」の内容を表示できます。

おすすめ

転載: blog.csdn.net/ymz641/article/details/112001269