0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

僕なりの Apache 備忘録

Last updated at Posted at 2024-06-16

再起動

sudo apachectl configtest && sudo apachectl graceful
  • apachectl configtest
    • Apache の設定ファイル(通常は httpd.conf や関連するファイル群)が正しく構文解析できるかどうかをテスト
    • 実際にはサーバーを再起動または停止しない
    • 設定ファイルに構文上のエラーがないかをチェックする
    • 再起動の前に行うと安全
    • エラーがある場合は、そのエラーが報告され、コマンドは非ゼロのステータスで終了
  • apachectl graceful
    • Apache に対して「優雅な」再起動を要求する
    • これは、既存の接続を中断せずに、新しい設定でサーバーを再起動する方法
    • 実際には、現在処理中のリクエストはその完了まで待たれ、新しいリクエストは更新された設定で処理される
    • サーバーのダウンタイムを最小限に抑えつつ設定の変更を適用するのに適している。
  • sudo 権限が必要

Basic認証

普通の掛け方

.htaccess

AuthType Basic
AuthName "Input ID and Password."
AuthUserFile フルパス/.htpasswd
require valid-user

.htpasswd

  • htpasswdで作成する
  • basic認証作成サイトで作成する

特定のディレクトリだけかける

<Directory "D:/pg/Apache/Apache24/htdocs/private"> # かけたいディレクトリ
  AuthType Basic
  AuthName "Input ID and Password."
  AuthBasicProvider file
  AuthUserFile D:/pg/Apache/Apache24/password/passwords
</Directory>

↑これではできない。<Directoryディレクティブがhtaccessでは使えない。Apacheの設定ファイルで記述するなら行ける。

これが正解。

Satisfy Any

AuthType Basic
AuthName "Input your ID and Password."
AuthUserFile /var/www/.htpasswd
require valid-user

SetEnvIf Request_URI "/member/" secure_dir
Order Allow,Deny
Allow from all
Deny from env=secure_dir

https://qiita.com/shotets/items/17bed9029140a6d925d2

特定のファイルを除外する

<FilesMatch "(cominsoon\.php)$"> # ここをファイル名にする
Satisfy Any
Order allow,deny
Allow from all
Deny from none
</FilesMatch>

ブラウザから対象ファイルにアクセスできないようにする

<Files ~ "^.(htpasswd|htaccess)$">
  deny from all
</Files>
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?