私はApacheからnginxにアプリケーションを移動していますが、書き換え部分が残っています。htaccessの書き換えをnginxの書き換えに変換する
私のApacheの.htaccessにはこれがあります。基本的に、私は、私は、彼らが行くと、クエリのVARを処理するために必要な場所へのルートの訪問者をすることができ、それを破壊する非常に基本的な部分を持っているindex.phpの内側に私のindex.phpへの問い合わせVARを含むすべて
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/?$ index.php?p=$1 [QSA,L]
を送信様々なテーマのPHPファイルでも
if (isset($_GET['p'])) {
$page = explode('/', $_GET['p']);
} else {
$page = NULL;
}
以降のスクリプトで
if ($page) {
} if ($page[0] == "stream") {
if (isset($page[1])) {
// Blah
}
}
}
、私はURLをつかんいたことは$_GET['id']
またはとvarsはは、さまざまな機能を実行します。
http://example.com/verify?code=blah
このURIはverify.php
と呼ばれるテーマファイルであることが判明し、verify.php
内では、コードのURL VARグラブされていることを確認し、index.phpのに入ってきます。
これをnginxで複製しようとしています。
location/{
# try_files $uri $uri/ =404;
rewrite ^(.*)/?$ index.php?p=$1 last;
# try_files $uri $uri/ /index.php?p=$args;
# try_files $uri $uri/ /index.php?p=$query_string;
}
は私もexample from this answerを試してみたが、それでも動作しない:私は、以下試してみました。
ここで私は私のセットアップにそれを適用しようとしました:
location/{
rewrite ^(.*)/?$ index.php?p=$1 last;
try_files $uri $uri/ @rewrite;
}
location @rewrite {
rewrite ^(.*)/?$ index.php?p=$1 last;
}
コメントのセクションでは、私の試行錯誤です。 Apacheをnginx形式に複製する方法についての洞察はありますか?
これは重複としてフラグを立てることができます。最初に参照された答えは私の問題を解決しませんでしたが、最終的にはそれを行いました。おかげで – Pat