次のルールを使用して、同じサーバー上の開発ドメインの URL にクエリ文字列を渡していますが、機能していました。
DOMAIN1 URL の作業コード: http://DOMAIN1.com/billing/renew.php?invoice_no=XXX
RewriteEngine On
RewriteRule ^billing/renew/invoice/([^/]*)$ /billing/renew.php?invoice_no=$1 [L]
ただし、サブディレクトリ「ベータ」のライブドメインにデプロイすると、機能しません。両方のドメインは同じサーバー上にあり、ホスト構成は同じです。htaccess が機能していることを確認するためにオーバーライドが許可されています。唯一の違いは、ライブ ドメインが https プロトコルで動作し、書き換えルールがホスト構成で定義され、https 以外のすべてのトラフィックを https にリダイレクトすることです。
ライブサーバーの beta ディレクトリに httacess ファイルを配置しました。
DOMAIN2 URL の非動作コード: " https://DOMAIN2.com/beta/billing/renew.php?invoice_no=XXX "
RewriteEngine On
RewriteBase /beta/
RewriteRule ^billing/renew/invoice/([^/]*)$ /billing/renew.php?invoice_no=$1 [L]
また試した
RewriteEngine On
RewriteRule ^beta/billing/renew/invoice/([^/]*)$ /beta/billing/renew.php?invoice_no=$1 [L]
誰かが私が間違っていることを教えてもらえますか?