Apacheに特定の条件に基づいてURLを書き直させようとしていますが、失敗しています。私は答えを探してみましたが、空の手が出てきました。私たちはWebサーバーとしてApacheを使用し、Coldfusion/Luceeコードを使用するためにTomcatへの要求をプロキシしています。mod_proxyを使用しているときにApacheが書き換えルールを無視する
基本的には、HTMLファイルにアクセスしているときに書き換えがうまく動作していますが、CFMまたはCFC(Coldfusion)ファイルにアクセスしようとすると、書き換えルールは完全に無視されます。私が望むのは、プロキシを通過する前にURLを書き直すことですが、何らかの理由でそれを動作させることができません。
私はこれを解決するのを助けることができる誰にも先ずありがとう。
これは私のhttpd.conf
ファイルにあります。これは、.htaccessファイルである
<VirtualHost *:80>
ServerName dev.xxxxx.com
DirectoryIndex default.cfm index.cfm index.htm index.html
DocumentRoot "Z:/XXXXXXXXX"
<Directory "Z:/XXXXXXXXX">
Require all granted
Allow from all
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
</Directory>
<Proxy *>
Allow from 127.0.0.1
</Proxy>
RewriteEngine On
DirectoryIndex index.cfm
ProxyPreserveHost On
ProxyPassMatch ^/(.+\.cf[cm])(/.*)?$ ajp://localhost:7009/$1$2
</VirtualHost>
スニペットhttpd.conf
<IfModule proxy_module>
<Proxy *>
Allow from 127.0.0.1
</Proxy>
ProxyPreserveHost On
ProxyPassMatch ^/(.+\.cf[cm])(/.*)?$ ajp://127.0.0.1:7009/$1$2
ProxyPassMatch ^/(.+\.cfchart)(/.*)?$ ajp://127.0.0.1:7009/$1$2
ProxyPassMatch ^/(.+\.cfml)(/.*)?$ ajp://127.0.0.1:7009/$1$2
ProxyPassReverse/ajp://127.0.0.1:7009/
</IfModule>
の底部に向かっ:
ここは、仮想ホストのファイルであります
RewriteEngine On
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]
RewriteRule ^(.*) /index.cfm/$1 [L]
これは機能しません。ファイル拡張子として.cfmまたは.cfcを含むファイルを無視しています – Yamaha32088
私が働いているもので答えを更新しました。 –