0

htaccessファイルでURLを書き直そうとしています。私のプロジェクトでは、index.phpを基本的なコントローラーとして使用しています。get-value"naam"を使用してデータベースからページをフェッチします。

例:localhost / YourDesigns / YDCMS / index.php?naam = home(これはホームページを表示します)localhost / YourDesigns / YDCMS / index.php?naam = about(これはaboutページを表示します)

次に、URLを次のように書き直したいと思います。localhost/ YourDesigns / YDCMS / home(これはホームページを表示します)localhost / YourDesigns / YDCMS / about(これはaboutページを表示します)

私は自分でいくつかのhtaccessを実行し、URLから「index.php」を正常に削除しましたが、「naam」はまだ残っています。

これを削除するにはどうすればよいですか?これは私の現在のhtaccessファイルです:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /YourDesigns/YDCMS/index.php?naam=/$1 [L]

前もって感謝します :)

4

1 に答える 1

1

プロセスを確認する方法は完全には正しくないと思います。たとえば、HTMLコンテンツ内のURLをその形式に置き換える必要があると言うようにURLを表示したい場合はlocalhost/YourDesigns/YDCMS/home、RewriteRuleを使用して内部で正しいパスを呼び出します。

RewriteRule ^desired_url_path/([a-z0-9\-]+)$ /base_url_path/index.php?naam=$1 [L]

このように、ユーザーがリンクをクリックすると、Apacheサーバーは上記の正規表現を使用して、基本的に次のようなルールでURLを変換します。ベースURL以降はすべてindex.phpに渡されるパラメーター値です。当然、正規表現はニーズに合わせて変更できます。上記で書いたものは、基本的な文字列パターンです。

于 2013-03-26T08:13:29.233 に答える