MuninのさまざまなApachieプラグインをWebサーバーで動作させようとしていますが、問題が発生しています。 Muninに利用可能なプラグインを確認するように依頼すると、3つのApacheプラグインのうち2つがエラーを返します。
Apacheサーバーのステータスが見つかりません
mod_status
がオンになっているなど、私が知る限り、すべてが正しく設定されています。
Lynx
を使用してlocalhost/server-status
を開こうとしたところ、404エラーが表示され、Wordpressエラーページが表示されます(試行したときに表示されるページ)存在しないページにアクセスします。)
これはおそらく、ApacheにWordpressインストールなど)を提供する方法と関係があると思われます。Webサイトは/var/www/wordpress
にあり、index.php
ファイルを1レベル上に置いてWordpressの指示に従って修正された.htaccessファイル。正常に動作しますが、Munin/Lynxがlocalhost/server-statusをロードしようとすると、それを探しているように感じます。 /var/www/
。
では、サーバーステータスを要求するときに実際にどこを見ればよいかをApacheに伝えるにはどうすればよいですか?
これが私のhttpd.confファイルです。
ServerName localhost
<VirtualHost *:80>
ServerName oliverhaslam.com
ServerAlias oliverhaslam.com
DocumentRoot /var/www/wordpress/
</VirtualHost>
<VirtualHost *:80>
ServerName ojhaslam.co.uk
ServerAlias ojhaslam.co.uk
DocumentRoot /var/sites/photo365/
</VirtualHost>
<VirtualHost *:80>
ServerName www.ojhaslam.co.uk
ServerAlias www.ojhaslam.co.uk
RedirectMatch permanent /(.*) http://ojhaslam.co.uk/$1
DocumentRoot /var/sites/photo365/
</VirtualHost>
<Location /server-status>
SetHandler server-status
Order deny,allow
Allow from all
</Location>
最後の部分を削除すると、上記のエラーではなく「禁止」エラーが発生します。
問題は私の.htaccess
ファイルです。これを削除すると、サーバーステータスは機能しますが、明らかにWordpressリンクは機能しません。ファイルは次のとおりです。
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
#Next two don't fix the issue.
#RewriteCond %{REQUEST_URI} !=/server-status
#RewriteRule ^(server-info|server-status) - [L]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Wordpressの.htaccessファイルは、存在しないすべてのファイルとディレクトリを送信して、Wordpressで処理します。サーバーステータスのURLも除外してみてください。
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !=/server-status
RewriteRule . /index.php [L]
私はこの投稿を手伝ってもらいましたが、私が最初に行ったように、あなたが賢明な答えを適用することに失敗した場合は、正確に条件を置く必要があります
RewriteCond %{REQUEST_URI} !=/server-status
ルールを書き換える前。
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !=/server-status
RewriteRule . /index.php [L]
だからこそ、オリバー・ハスラムはまだ同じ問題を抱えています。
RewriteCond %{REQUEST_URI} !=/server-status
他の条件より上。
これが他の人がここに来るのを助けることができることを願っています:)