9日目-Apacheサービス生産戦闘-2(ob09)

1.IPベースの仮想ホスト構成

1.1一時IPを追加する

ifconfig ens33:200 192.168.26.200 netmask 255.255.255.0 up

ここに画像の説明を挿入
vim / application / apache / conf / extra / httpd-vhosts.confを編集します

<VirtualHost 192.168.26.200:80>
    ServerAdmin [email protected]
    DocumentRoot "/var/bbs"
    ServerName 192.168.26.200
    ServerAlias bbsoldboy.etiantian.org
    ErrorLog "logs/bbs.etiantian.org-error_log"
    CustomLog "logs/bbs.etiantian.org-access_log" common
</VirtualHost>


#检查重启
apachectl -t 
apachectl graceful

ここに画像の説明を挿入
ここに画像の説明を挿入

2.ポートベースの仮想ホスト構成

2.1リスニングポートを追加します(httpd.confを変更します)

IPベース

httpd.confメイン構成ファイルを変更し、デフォルトのListen 80構成行を見つけて、以下に追加します

Listen 8080
Listen 8090

2.2httpd-vhosts.confを設定します

<VirtualHost 192.168.26.200:8090>
    ServerAdmin [email protected]
    DocumentRoot "/var/bbs"
    ServerName 192.168.26.200
    ServerAlias bbsoldboy.etiantian.org
    ErrorLog "logs/bbs.etiantian.org-error_log"
    CustomLog "logs/bbs.etiantian.org-access_log" common
</VirtualHost>

ここに画像の説明を挿入
ここに画像の説明を挿入

2.3ドメイン名に基づく80以外のポート

httpd-vhosts.confを変更し
ここに画像の説明を挿入
ます(NameVirtualHostを開かなくてもエラーは報告されません、問題ありません)

<VirtualHost *:8080>
    ServerAdmin [email protected]
    DocumentRoot "/var/bbs"
    ServerName bbs.etiantian.org
    ServerAlias bbsoldboy.etiantian.org
    ErrorLog "logs/bbs.etiantian.org-error_log"
    CustomLog "logs/bbs.etiantian.org-access_log" common
</VirtualHost>

ここに画像の説明を挿入
ここに画像の説明を挿入

2.4Apacheのエイリアス

ここに画像の説明を挿入
ここに画像の説明を挿入

ホストに解像度を追加する
ここに画像の説明を挿入

ここに画像の説明を挿入
ここに画像の説明を挿入

3. Apacheのmod_deflateモジュール(圧縮)

ここに画像の説明を挿入

#检查是否安装 mod_deflate模块
ls /application/apache/modules | grep deflate
apachectl -l | grep deflate
apachectl -M | grep deflate

3.1 httpd.confでのdeflateの適用:

ここに画像の説明を挿入
vim /application/apache/conf/extra/httpd-vhosts.conf、それを<VirtualHost * .80>構造の1つに追加します

<ifmodule mod_defalte.c>
    DeflateCompressionLevel 9  
    SetOutputFilter DEFLATE 
    AddOutputFilterByType DEFLATE text/html text/plain text/xml
    AddOutputFilterByType DEFLATE application/javascript
    AddOutputFilterByType DEFLATE text/css
</ifmodule>
apachectl -t
apachectl graceful

ここに画像の説明を挿入
ここに画像の説明を挿入

4、Apacheのmod_expireモジュール(キャッシュ)

mod_expires(キャッシュされたテクノロジー)

#检查mod_expires模块是否安装
apachectl -l | grep mod_expire

ll /application/apache/modules/ | grep mod_expire
-rwxr-xr-x 1 root root  44192 Feb 19 17:56 mod_expires.so

grep mod_expires.so /application/apache/conf/httpd.conf
LoadModule expires_module     modules/mod_expires.so

#如果最开始编译安装./configure的时候加上了 --enable-expires ,则就会安装mod_expires

mod_expireDSOのインストール方法

cd /server/tools/httpd-2.4.46/modules/metadata
/application/apache/bin/apxs -c -i -a mod_expires.c
ll /application/apache/modules/mod_expires.so

ここに画像の説明を挿入
現在のhttpヘッダーを表示する

[root@lvs2-139 metadata]# curl -I blog.etiantian.org
HTTP/1.1 200 OK
Date: Sat, 20 Feb 2021 03:16:46 GMT
Server: Apache/2.4.46 (Unix)
Last-Modified: Thu, 18 Feb 2021 08:21:43 GMT
ETag: "23-5bb98068ff62c"
Accept-Ranges: bytes
Content-Length: 35
Content-Type: text/html

有効期限はhttpd.confに適用されます

次のコンテンツをhttpd.confの最後にコピーして保存します。

ExpiresActive on
ExpiresDefault "access plus 12 month"
ExpiresByType text/html "access plus 12 month"
ExpiresByType text/css "access plus 12 month"
ExpiresByType image/gif "access plus 12 month"
ExpiresByType text/jpeg "access plus 12 month"
ExpiresByType text/jpg "access plus 12 month"
ExpiresByType text/png "access plus 12 month"
ExpiresByType application/x-shockwave-flash "access plus 12 month"
ExpiresByType application/x-javascript "access plus 12 month"
ExpiresByType video/x-flv "access plus 12 month"

有効期限はhttpd-vhosts.confに適用されます

上記のコンテンツをhttpd-vhosts.confの構造の1つにコピーして、
ここに画像の説明を挿入
構成後に文法確認し、apacheを再起動します

apachectl -t
apachectl graceful

このとき、画像を/ var / blog、expires.jpgにアップロードします

[root@lvs2-139 extra]# curl -I blog.etiantian.org/expires.jpg
HTTP/1.1 200 OK
Date: Sat, 20 Feb 2021 03:57:51 GMT
Server: Apache/2.4.46 (Unix)
Last-Modified: Sat, 20 Feb 2021 03:56:21 GMT
ETag: "3567a-5bbbc8d44df5c"
Accept-Ranges: bytes
Content-Length: 218746
Cache-Control: max-age=31104000
Expires: Tue, 15 Feb 2022 03:57:51 GMT
Content-Type: image/jpeg

上記のCache-Control:max-age = 31104000およびExpires:Tue、15 Feb 2022 03:57:51 GMT情報を確認できます。ここでは、12か月間キャッシュされます。

Firefox / ChromeのYSlowプラグインを使用して表示することもできます。
ここに画像の説明を挿入

モジュール構文とEtagの有効期限(理解)

ここに画像の説明を挿入

5、Apacheの最適化

5.1 Apacheのデフォルトユーザーの変更(省略)

User apache
User apache

5.2作業モード、同時実行数を増やす(最大2000〜5000)(省略)

./configure操作

--with-mpm=worker

5.3Apacheバージョンなどの機密情報を保護する

ここに画像の説明を挿入

5.4 apacheディレクトリファイルのアクセス許可設定(ルート、ディレクトリ755、ファイル644)

apache Webサイトディレクトリのグループはrootであり、アクセス許可は755です。ファイルのグループはrootであり、アクセス許可は644です(777にこの危険なアクセス許可を与えることはできません)
ここに画像の説明を挿入

5.5接続数を増やすにはhttpd-mpm.confを開きます

ここに画像の説明を挿入

5.6Apacheアンチリーチ機能

https://blog.51cto.com/oldboy/909696「IDCコンピュータールームの帯域幅の突然の増加への対応」
https://blog.51cto.com/9075724/2315039
変更されたhttpd.conf
ここに画像の説明を挿入

5.7Apacheはディレクトリインデックスを禁止しています

ここに画像の説明を挿入

5.8ユーザーによる上書きの禁止(オーバーロード)

ここに画像の説明を挿入

5.9 .htaccessファイル(分散構成ファイル)の使用を避ける

ここに画像の説明を挿入
ここに画像の説明を挿入
ここに画像の説明を挿入
ここに画像の説明を挿入
CDNを使用する(Wangsu、Lanxun、Kuaiwang)

ここに画像の説明を挿入
次の最適化ポイントは、Lazy Dog +-+のスクリーンショットです。

終わり

おすすめ

転載: blog.csdn.net/Nightwish5/article/details/113863585