Scribble at 2025-03-20 13:17:38 Last modified: 2025-03-20 18:51:21

さきほどから、ApacheMonitor で httpd を起動すると「Apache2.4 サービスは、次のサービス固有エラーで終了しました: ファンクションが間違っています。」というイベントログのエラーで Apache が起動しないのに、コマンド・プロンプトで httpd.exe を直に起動すると正常に立ち上がるという、おかしな現象に出くわしている。Apache のログには何も記録されておらず、イベントログでも「ファンクションが間違っています」の一点張りで詳しいエラーの内容が出てこない。httpd.exe -t でも httpd.conf の内容にエラーはない。

暫く調べてみると、やはりパスに Japanese と呼ばれる東アジアの地方言語が使われていることが原因のようだ。Google のアカウント設定で言語を英語にするとフォルダ名は変更できるようだが、それはそれでブラウザでの運用において直感的な操作性が低下する(なんだかんだ言っても母国語は日本語なので)。

ということで、オンラインで調べると「シンボリックリンクを作成する」という話はよく出ているが、最初に明言しておくと、これは間違いである。シンボリックリンクやジャンクションを作成しようと、Apache は日本語のパスを通してくれないのである。とにかく、この手のインチキなトラブルシュートを書いている連中に言いたいのは、他人のコピペで記事を書くんじゃなくて、ちゃんと自分で試してから記事を書けということだ。そんなことばっかやってるから、君らの記事を食い散らかした生成 AI にも及ばないことしか書けなくなるのだ。君らは勉強もしないし試しもしないで記事を書くが、生成 AI は少なくとも君らの記事だけではなく他の記事も読んで比較・検討はしているからである。

で、ただいまこうしてローカルのウェブ・ページで CMS を動かして投稿できているのは、コマンド・プロンプトから直に Apache/bin/httpd.exe をスタートさせると正しく起動するからで、コマンド・プロンプトの画面を開きながら Apache を使うという、前世紀のローカル・サーバを使ったアプリケーションのような環境で運用しているからである。

[追記] さて、そんなこんなで僕の環境ではようやく事態が収まった。結局、日本語フォルダへのパスを通すのは諦めて、ローカルで使うウェブ・コンテンツを全て C:/Development/Web 配下にコピーして、そこに Apache で設定した VirtualHost の DocumentRoot を設置し直した。ここで作成したり更新したファイルは、Google Drive 内のフォルダに BunBuckup というバックアップのソフトウェアを使っているので、これのバックアップ対象として登録したから、Google Drive にも一定の時間ごとに最新のファイルが反映される。直に Google Drive の中でコンテンツを運用するという方針はやめたわけである。これでジャンクションやシンボリック・リンクなんて使わずに済む。

  1. もっと新しいノート <<
  2. >> もっと古いノート

冒頭に戻る


共有ボタンは廃止しました。