4

多数の仮想ホストが構成されたローカル開発 Debx64 マシンがあります。プライマリ URL は次のように設定されます。

<VirtualHost *:80>
ServerAdmin webmaster@blah.com
ServerName blah.com 
ServerAlias blah.com 
DocumentRoot /home/blah/v1.blah.com 
<Directory /home/blah/v1.blah.com/>
            AllowOverride All
            Order allow,deny
            allow from all
</Directory>
AccessFileName .htaccess  
ErrorLog /home/blah/blah_logs/v1.blah.com.in-error_log
CustomLog /home/blah/blah_logs/v1.blah.com.in-access_log common 
</VirtualHost>

そして、それはプライマリ オペレーティング VH にリダイレクトされます

<VirtualHost *:80>
 ServerAdmin webmaster@blah.com
 ServerName v1.blah.com 
 ServerAlias v1.blah.com 
 DocumentRoot /home/blah/v1.blah.com 
<Directory /home/blah/v1.blah.com/>
            AllowOverride All
            Order allow,deny
            allow from all
</Directory>
AccessFileName .htaccess  
ErrorLog /home/blah/blah_logs/v1.blah.com.in-error_log
 CustomLog /home/blah/blah_logs/v1.blah.com.in-access_log common 
</VirtualHost>

.html を .php として解析するために、v1.blah.com に .htaccess を設定しました。

Options +ExecCGI

AddHandler php-fcgi .php .html 
Action php-cgi /home/php5-fcgi
<FilesMatch "^php5?\.(ini|cgi)$">
    Order Deny,Allow
    Deny from All
    Allow from env=REDIRECT_STATUS
</FilesMatch>

URL に v1.blah.com としてアクセスすると問題なく動作しますが、blah.com としてアクセスすると、.htaccess は呼び出されず、.html は通常どおりに提供されます。

私は何が欠けていますか?変更が必要な php.ini に何かありますか?

4

1 に答える 1

7

ホストに2つの別々のエントリが必要な特別な理由はありますか?どちらも同じログファイルとDocumentRootを使用しているため、ServerAliasのリストにblah.comを追加できませんでしたか?

したがって、次の構成になります。

<VirtualHost *:80>
ServerAdmin webmaster@blah.com
ServerName v1.blah.com
ServerAlias v1.blah.com blah.com 
DocumentRoot /home/blah/v1.blah.com 
<Directory /home/blah/v1.blah.com/>
            AllowOverride All
            Order allow,deny
            allow from all
</Directory>
AccessFileName .htaccess  
ErrorLog /home/blah/blah_logs/v1.blah.com.in-error_log
CustomLog /home/blah/blah_logs/v1.blah.com.in-access_log common 
</VirtualHost>
于 2012-06-08T06:25:25.953 に答える