ひじりんのひつまむしブログ

現役システムエンジニアのゲームやら映画やら技術やら・・

apache で バーチャルホストの確認

 

エラー

バーチャルホストを設定しても

反映してくれない事象(他のホストに転移する)

 

バーチャルホストの確認

httpd -t -D DUMP_VHOSTS

をすることで

[root@www data]# httpd -t -D DUMP_VHOSTS
VirtualHost configuration:
*******:80      is a NameVirtualHost
         default server ******** (/etc/httpd/conf.d/*******.conf:2)
         port 80 namevhost ********* (/etc/httpd/conf.d/********.conf:2)
                 alias ************

この、namevhost の行がないと

デフォルトのサーバに転移されてしまう

apache で403エラーの対処法

 

403エラー

apache で、ファイルのアクセスエラーがある場合

 

対象ファイルの読み取り権限

ディレクトリの権限で、「その他のユーザ」での

読み取り権限が必要

# chmod o+r パス

 

ルートディレクトリの実行権限

ルートディレクトリまでの各パスに

実行権限が必要

# chmod o+x ディレクト

 

apache 2.4 のデフォルト権限

apache 2.4 からデフォルトで全アクセス不可になった

/etc/httpd/conf/httpd.conf

<Directory />
    AllowOverride none
# アクセスできないので変更
#    Require all denied
    Require all granted
</Directory>

denied を granted に変更

 

Gitのアクセストークンの認証エラー

 

アクセストークンの認証エラー

GitHubを使っていて、認証エラーが発生する場合がある

発行されるアクセストークンは

初期設定で30日であるため、その期限切れになると認証エラーとなる

 

再発行

その場合は、GitHubのアカウント設定から

Developer Setting

Personal Access Tokens

より

Expired on xxxxxx(日付)

Regenerate Token

をすることで、再発行できます

git のブランチ名を変更

 

カレントでないブランチ名を変更する方法

カレントでない場合は、下記で変更

git -m [旧ブランチ名] [新ブランチ名]

 

カレントのブランチ名を変更する方法

カレントの場合は、下記で変更

git -m [新ブランチ名]

 

git push で失敗した場合の対処法

 

git push で失敗(error: RPC failed; curl 92)

git push すると、下記のエラーが発生する場合がある

error: RPC failed; curl 92 HTTP/2 stream 0 was not closed cleanly: CANCEL (err 8)

 

この場合は、

httpプロトコルのバージョンを下げることで解決

git config --global http.version HTTP/1.1

 

それでも失敗(error: RPC failed; curl 18)

こんどは、下記のエラー

error: RPC failed; curl 18 transfer closed with outstanding read data remaining

 

この場合は、httpプロトコルのキャッシュサイズのようで

そのサイズを変更することで解決

git config --global http.postBuffer 524288000

 

私の場合は、上記でなんとか push 成功できました

Gitで、ファイルを履歴から消す方法

 

ファイルを誤ってcommit

大きいファイルやバイナリをcommitしてしまった場合

削除してcommitしても、履歴にはのこる

100Mを超えたようなファイルは、GitHubだとエラーになってしまう

どうしても、履歴から「なかった物」としたいケースもある

 

履歴から削除する方法

履歴から削除する場合は、下記の手段がある

#git filter-branch --tree-filter "rm -f [削除したいファイル]" HEAD

これで削除できる

 

削除時のエラー

削除するときに下記のエラーがでる場合は、.git フォルダのある

トップのディレクトリでないため、トップディレクトリに移動してから

パス付で呼び出すとよい

You need to run this command from the toplevel of the working tree.

 

フォルダを削除する場合

フォルダを削除するには

#git filter-branch --tree-filter "rm -f -r [削除したいディレクトリ]" HEAD

となる

 

2回目以降にエラーとなる場合

2回目を実施しようとすると、下記のエラーが発生する場合がある

この場合は、filter-branch に -f オプションをつけると解決する

Cannot create a new backup.
A previous backup already exists in refs/original/
Force overwriting the backup with -f

 

 

 

apache vhostの確認方法

 

仮想ホスト

一つのサーバ上で、ドメインに関する記述を記載でき

また、複数のドメインを記述することもできます

ホストは通常、サーバで決まっていますが

サブドメインのように、用途に分けたりするときに

用いられるのが仮想ホストです

 

apacheの設定

/etc/httpd/conf.d の下に、xxx.conf を設け

そのファイルに記述

<VirtualHost ipアドレス:ポート>

     DocumentRoot /var/ww/html

     ServerName xxx.net

</VirtualHost>

 

仮想ホストの確認方法

確認するには、下記のコマンドで実施できる

httpd -t -D DUMP_VHOSTS

また、httpd の変わりに、apachectl を使うことも可能

apacheclt -t -D DUMP_VHOSTS

 

複数を記述したい場合

複数の違ったドメインを管理するには

conf ファイルを分ける、もしくは、VirtualHost の記述を複数記載する

<VirtualHost ipアドレス:ポート>

     DocumentRoot /var/ww/html1

     ServerName xxx.org

</VirtualHost>

<VirtualHost ipアドレス:ポート>

     DocumentRoot /var/ww/html2

     ServerName xxx.net

</VirtualHost>

 

tomcat(ajp)でアプリケーションを切り分ける場合

各VirtualHostないに記述すればよい

<VirtualHost ipアドレス:ポート>

     DocumentRoot /var/ww/html1

     ServerName xxx.org

     ProxyPass /yyyy/ ajp://localhost:8009/yyyy/

</VirtualHost>

<VirtualHost ipアドレス:ポート>

     DocumentRoot /var/ww/html2

     ServerName xxx.net

     ProxyPass /zzzzz/ ajp://localhost:8019/zzzzz/

</VirtualHost>

PVアクセスランキング にほんブログ村