ubuntu24.04 サーバーで、自作サーバーを立てたときにぶつかった問題を折角なので記録しておく。
ちゃんと書くのは面倒なので、ヒントを書いておくので詳しくは各自調べてください。
1.apache2で、SarverName関係のの警告が出る。
しかもなぜかapache2.confにServerNameを設定するとエラーが出て起動できない。
$ sudo vi /etc/apache2/apache2.conf
#ServerName XXXX
↓
ServerName XXXX
これでエラーが出る。
conf内にコメントアウトして存在するのに関わらず、設定するとエラーに。
これは結局根本理由はわからず。
ちなみにこのコマンドで設定が正しいかわかる。
$sudo apache2ctl configtest
仕方ないのでどこかのサイトに乗っていた方法で対処
$sudo vi /etc/apache2/conf-available/fqdn.conf
のように、新たな設定ファイルを作成し下記のように記述。
ServerName www.xxxx.com
保存したらコンフィグファイルを追加するコマンドを実行する
$sudo a2enconf fqd
再起動するとエラーが出なくなった。
$sudo apache2ctl restart
ついでに同じファイルに
DocumentRoot /home/www
と設定しておくとサーバーのドキュメントルートも設定できる
これも何故かapache2.confに書いても反映されない。
ちなみにいくつか知っておいたほうがいいコマンドを書いておく
a2enconf xxx
個別に作った設定ファイルを有効にするコマンド
例えば
/etc/apache2/conf-available/
の中のxxx.confというファイルの名前を指定すると
/etc/apache2/conf-enable/
にシンボリックリンクを張り、実際に読み込まれるようになる。
新規に.confファイルを作っただけでは有効にならないので注意!
a2disconf xxx
逆に指定したコンフィグを無効化するコマンド
他にも
a2enmod
モジュール設定を追加
各種モジュール等はインストールしても、はじめはapacheの設定に追加されていないので、このコマンドで追加しよう。
例$sudo a2enmod ssl
a2ensite
バーチャルホスト設定を追加
こちらもあらかじめ設定ファイルを作っておいてから有効にする
a2dismod
a2dissite
上記の逆で指定した設定を無効にする
設定ファイル自体はは削除されないので安心
以下にxxx.serviceのように設定ファイルが存在する。
それを編集するには直接でなく、
$sudo systemctl edit --full apache2