変奏現実

パソコンやMMORPGのことなどを思いつくまま・・・記載されている会社名・製品名・システム名などは、各社の商標、または登録商標です。

この画面は、簡易表示です

apache

[apache]パスに.を含むurl

.backupとか見せたくないフォルダとかファイルを個別に.htaccessを作って書くのも面倒なんで

apacheのconfファイルに

## フルパス名にドットで始まるディレクトリィやファイルはブラウザから禁止
  <Directory ~ "\/\..+\/">
    Require all denied
  </Directory>
  <Files ~ "\/\..+\/">
    Require all denied
  </Files>
## .

って書くのはうまくいかないかな?matchなんで正規表現なんでディレクトリィやファイルのフルパス名のどこかに「.で始まる」ディレクトリィがあったらブラウザから禁止にできたっぽい。

ただ、

apacheでは短いパスでいくら禁止しても

そこから続く長いパスでRequireしたら通ってしまうが

単に合致したパターンの長さで判定してないとは「断定しにくい」・・・

何とも(判らん

## フルパス名にドットで始まるディレクトリィやファイルは外部から禁止
  <Directory ~ "\/\..+\/">
    Require all denied
    Require ip 192.168.xxx.xxx/24
  </Directory>
  <Files ~ "\/\..+\/">
    Require all denied
    Require ip 192.168.xxx.xxx/24
  </Files>
## .

と書き加えてreloadしたらLANから見えるので効果はあるっぽい。



[podman]AlmaLinux9+apache

AlmaLinux9+apacheのイメージを作ってみる。

podmanの使い方としては、

  • mariaDBコンテナ
  • apacheコンテナ

とした方が良いかなと思うから。

FROM  almalinux:latest
RUN   dnf -y update
RUN   dnf -y install httpd
#COPY  httpd.conf /etc/httpd/conf/httpd.conf
RUN   systemctl enable httpd
#
RUN   dnf clean all;
EXPOSE 80 443
CMD [ "/sbin/init" ]

を作って

# podman build -t almalinux9_apache .
STEP 1/7: FROM almalinux:latest
STEP 2/7: RUN   dnf -y update
--> Using cache a2b577abfca6c6300e9f168092f69ba20ea7a88d6149f315be56de91a4380bf7
--> a2b577abfca6
STEP 3/7: RUN   dnf -y install httpd
Last metadata expiration check: 21:24:28 ago on Wed Apr  2 17:57:08 2025.
・・・
Installed:
  almalinux-logos-httpd-90.5.1-1.1.el9.noarch                                   
  apr-1.7.0-12.el9_3.x86_64                                                     
  apr-util-1.6.1-23.el9.x86_64                                                  
  apr-util-bdb-1.6.1-23.el9.x86_64                                              
  apr-util-openssl-1.6.1-23.el9.x86_64                                          
  httpd-2.4.62-1.el9_5.2.x86_64                                                 
  httpd-core-2.4.62-1.el9_5.2.x86_64                                            
  httpd-filesystem-2.4.62-1.el9_5.2.noarch                                      
  httpd-tools-2.4.62-1.el9_5.2.x86_64                                           
  libbrotli-1.0.9-7.el9_5.x86_64                                                
  mailcap-2.1.49-5.el9.noarch                                                   
  mod_http2-2.0.26-2.el9_4.1.x86_64                                             
  mod_lua-2.4.62-1.el9_5.2.x86_64                                               

Complete!
--> 76f7cccc93f3
STEP 4/7: RUN   systemctl enable httpd
Created symlink /etc/systemd/system/multi-user.target.wants/httpd.service → /usr/lib/systemd/system/httpd.service.
--> 8071a49560fc
STEP 5/7: RUN   dnf clean all;
26 files removed
--> 9cde52251b3b
STEP 6/7: EXPOSE 80 443
--> 91aa7de1ab1c
STEP 7/7: CMD [ "/sbin/init" ]
COMMIT almalinux9_apache
--> 1d4a7b70300c
Successfully tagged localhost/almalinux9_apache:latest
1d4a7b70300c7fda2a4dfea9dd5e02a5645a4e9236e326543838e9ffe3351af3

ではコンテナを作成

# podman run -d -it --name almalinux9_apache_contener_work \
 -p 80:80 \
 almalinux9_apache
603e81035435f7078243160754c72c621324151e3ccb0e1dd80d5f4d1e1362f0

ログも異常なし。

コンテナ内の

  • /etc/httpd/conf
  • /etc/httpd/conf.d
  • /var/www

を圧縮して取り出してホストの各保存ディレクトリィに展開しコンテナを作り直し

# podman run -d -it --name almalinux9_apache_contener \
 -p 8080:80 \ ※80:80だとエラるので8080
 -v '/{www保存ディレクトリィ※事前作成済}:/var/www' \
 -v '/{conf保存ディレクトリィ※事前作成済}:/etc/httpd/conf' \
 -v '/{conf.d保存ディレクトリィ※事前作成済}:/etc/httpd/conf.d' \
 almalinux9_apache
7b6fe5be65cedc24e4821f9edb2246ba7444d0f953d1b0185ded091083acae8a

# firewall-cmd --add-port=8080/tcp --permanent
# firewall-cmd --reload
# firewall-cmd --list-all ※設定内容の確認

これでホスト側で設定やコンテンツを編集しやすくなった(笑

# podman exec almalinux9_apache_contener systemctl reload httpd
# podman exec almalinux9_apache_contener systemctl restart httpd

は長いからコンテナの停止・起動でいいや



[WordPress]5.5

またアップグレードの催促があったので、【アップグレード】ボタンを押した。

なぜ、自動アップグレードしない。?

$nslookup  {このサーバーのお名前}

するとグローバルなIPアドレスしか出てこない。

そりゃ無理です。

そのせいか?
編集画面・左上のW印の「記事一覧を表示」をクリックすると、WordPressの案内ページにジャンプするのでとても使いにくい。

ルータにループバックさせればいいけど、ルータ調整中に無限ループするとかなり面倒な事になるので、

127.0.0.1   {このサーバーのお名前}

にした。

これで自動的にアップグレードやバックアップが動くはず。

ついでに、dnf updateしたら、Listen 443 設定が被っているので停止になった。

あれこれ調べたら、/etc/conf.d/ssl.conf を消して、vhost.confの名前でVirtualHostの設定をしていたから、Updateで自動的に/etc/conf.d/ssl.confが復元されていたせいだった。消したのでOK。

$ httpd -t
Syntax OK

ついでにSELINUXもtargetedになっていたので、disableに直した。

まだ変だな?

AM/PM表記を、24時間表記に変更。

カレンダーの週の初めが月曜になっているので日曜に変更。

php 7.2 では古いらしい。

# dnf -y install https://rpms.remirepo.net/enterprise/remi-release-8.rpm
# # dnf module list php
最速のミラーを確定しています (41 hosts).. done. ---  B/s |   0  B     --:-- ETA
Remi's Modular repository for Enterprise Linux  182 kB/s | 576 kB     00:03
Safe Remi's RPM repository for Enterprise Linux 1.5 MB/s | 1.5 MB     00:01
CentOS-8 - AppStream
Name     Stream         Profiles                       Summary
php      7.2 [d][e]     common [d], devel, minimal     PHP scripting language
php      7.3            common [d], devel, minimal     PHP scripting language

Remi's Modular repository for Enterprise Linux 8 - x86_64
Name     Stream         Profiles                       Summary
php      remi-7.2       common [d], devel, minimal     PHP scripting language
php      remi-7.3       common [d], devel, minimal     PHP scripting language
php      remi-7.4       common [d], devel, minimal     PHP scripting language

ヒント: [d]efault, [e]nabled, [x]disabled, [i]nstalled
# dnf module reset php
# dnf module install php:remi-7.4
# php -v
PHP 7.4.9 (cli) (built: Aug  4 2020 08:28:13) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.9, Copyright (c), by Zend Technologies

tarコマンドが使えない?

# dnf install tar

警告 オプションのモジュール imagick がインストールされていないか、無効化されています。

警告 オプションのモジュール zip がインストールされていないか、無効化されています。

# dnf install php-imagick
ImageMagick-libs-6.9.10.86-1.el8.x86_64
php-pecl-imagick-3.4.4-10.el8.remi.7.4.x86_64
他多数。
# dnf install php-zip
libzip-1.7.3-1.el8.remi.x86_64 php-pecl-zip-1.19.0-1.el8.remi.7.4.x86_64

残るはあと2つ

停止中のテーマを削除してください セキュリティ

テーマはサイトのデザインを決定します。ブランドの一貫性とサイトの安全性の維持のため、常に更新することが重要です。

サイトのインストール済みテーマ5個はすべて最新版です。

サイトには WordPress のデフォルトテーマ Twenty Twenty と現在有効なテーマ Enough を除いて、3個の停止中のテーマがあります。 サイトのセキュリティ向上のため未使用のテーマは削除することをおすすめします。

※無視。パス!

予約したイベントの実行に失敗しました

予約したイベント inpsyde_phone-home_checkin の実行に失敗しました。サイトは動作しますが、予約した投稿や自動更新は正しく動作しないかもしれません。

5.4.1の頃から原因不明らしい。



apache

apacheのインスト
元ネタはここ。
# yum -y install httpd
# yum -y install php php-mbstring
# /etc/rc.d/init.d/httpd start
# chkconfig httpd on
# chkconfig –list httpd
httpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
あとで以下のフォルダを元サーバーからコピー。
/etc/httpd/conf/*
/etc/httpd/conf.d/*
/etc/php.ini
/var/www/*
 




top