1

私のサーバーはPleskでCentOSを実行しているため、httpd.confを編集してRewritelockエントリを追加することは、私が理解しているオプションではありません。RewriteLock エントリも vhost.config で許可されていないため、ここで説明されている代替案を見て行き詰まっていると思います。

テストとして、このアプローチを使用して成功しています。これは、エントリが vhost.conf にあるため、わずかに変更されています。ファイルをロックする試みも追加しました。

#!/usr/bin/env php
<?php
/* Extra lines to add to vhost.conf:
RewriteEngine On
RewriteMap tryme prg:/home/trainee/website/andy
RewriteRule (.*\.htm) ${tryme:$1}
*/

set_time_limit(0); # forever program!
$keyboard = fopen("php://stdin","r");
flock($keyboard, LOCK_EX); //lock the file
while (1) {
        $line = trim(fgets($keyboard));
        if (preg_match('/^(.*)\.htm$/',$line,$igot)) {
                print "$igot[1].html\n";
        } else {
                print "$line\n";
        }
}
?>

hereで説明したように、どのプロセスも排他ロックを待機するように見えますが、どのようにテストするのが最善かわかりません。ご存知かもしれませんが、 flock() を使用すると、すべてのプロセスが待機し、この実行中のプログラムでリクエストがスクランブルされないことが保証されますか?

4

1 に答える 1

0

メインの httpd.conf を編集する必要はありません。Plesk では、個別の構成ファイルでカスタム Apache ディレクティブを定義できます。

/var/www/vhosts/domain.com/conf/vhost.conf

次に、ドメインの構成を更新する必要があります。

Plesk 10 および Plesk 11 の場合:

/usr/local/psa/admin/bin/httpdmng --reconfigure-domain domain.com

Plesk 7、8、および 9 の場合:

/usr/local/psa/admin/sbin/websrvmng --reconfigure-vhost --vhost-name=domain.com
于 2013-05-06T07:59:02.547 に答える