私は自分のCMSをPHPで開発しましたが、今はそれをSEO-Friendlyにしたいと思いますが、いくつか問題があります。
htaccessとCMSに関するURLの問題
ウェブサイトのページの大部分は次のように、IDからアクセスできます。
www.example.com/?id=alphanumericId123
www.example.com/?id=main
というように、私はこのページのURLを書き換えたいのですが:
www.example.com/aplhanumericId/
www.example.com/main/
私は、この書き換えルールを書いてきたし、それが正常に動作します:
RewriteEngine On
RewriteRule ^([^/d]+)/?$ index.php?id=$1 [QSA]
が、それはカントーのために働くことができません静的なファイルやスクリプトのためにアクセスできるページはいくつかあります。
いくつか例外を設ける方法はありませんか?以下のような:それはファイルではなくディレクトリではありません場合は、あなたのRewriteRule
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
は基本的にそれがチェックする前
if the requested file exsist {
if it is protected {
display error 403
} else {
display file
} } else {
rewrite rule
}
@yessureそして、あなたがコメントアウト時にこれらの2つの条件とルールをそれが動作しますか? – jeroen
いいえ、間違いました。申し訳ありません。あなたが泣いた最初の状態は、完璧に働きます、ありがとう。 –