回答編集履歴

1 追記: .html も

TaichiYanagiya

TaichiYanagiya score 10053

2017/07/26 15:27  投稿

トップディレクトリの .php のみ CGI モードで動かし、サブディレクトリ以下の .php は mod_php で動かしたいということでしょうか?
### サブディレクトリに .htaccess を置く方法
すべてのサブディレクトリに以下の .htaccess を置きます。
.php のハンドラーを再設定します。
```
RemoveHandler .php
<FilesMatch \.php$>
   SetHandler application/x-httpd-php
</FilesMatch>
```
### RewriteRule の H|handler フラグを使う方法
パスに「/」が無ければ CGI、「/」があれば mod_php となるよう、ハンドラーを設定します。
```
Action myphp-script /php.cgi
RewriteEngine On
RewriteRule ^php\.cgi - [L]
RewriteRule ^[^/]+\.php$ - [L,H=myphp-script]
RewriteRule ^.*/.*\.php$ - [L,H=application/x-httpd-php]
```
```
---
###(2017/07/26 15:27) 追記
トップディレクトリの .html を PHP-CGI で動かしたいということなのですね。
```
Action myphp-script /php.cgi
RewriteEngine On
RewriteRule ^php\.cgi - [L]
RewriteRule ^[^/]+\.(php|html)$ - [L,H=myphp-script]
```

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る