特定の.htaccessファイルの仕組みを理解するための助けを探しています。.htaccessファイルの理解
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [L,QSA]
は、ここで私は私がこれまで理解して考えるものです:
1行目:Apacheが一定のルールに基づいて、URLを変更することができますか?
行2,3:ファイルとディレクトリにアクセスしないことについての何か。しかし、私のブラウザはhttp://localhost/dev/can_i/yes_i_can.php
にアクセスすることに問題はないので、私はそれを正しく理解しているとは思わない。
行4:私はそれを得ます^(.*)$
は「何かで始まり終わる」という正規表現ですが、これは正確に何を指していますか?全体のURL?それから、式が追加されたindex.phpに置き換えられます。だから、私たちはlocalhost/index.php?url=localhost/index.php/whatever_came_after
のようなものを手に入れませんか? 最後に[L、QSA]は何をしますか?私はQSAが "クエリ文字列の追加"を意味するが、それがどのように動作するかはわかりません。
ご迷惑をおかけして申し訳ございません。