4

申し訳ありませんが、前の質問を変更しました。localhost の .htaccess 書き換えルールに問題があります。http://localhost/testing/.htaccess に .htaccess ファイルがあります。以下のようにURLを変更したい

http://localhost/testing/site.php?site=test

http://localhost/testing/test

そして、私は .htaccess にコードを持っています

RewriteEngine on
RewriteRule ^([^/\.]+)/?$ site.php?site=$1 [L]

これは正しく機能していますが、次のようなURLもあります

http://localhost/testing/pages.php?site=test&pid=2

ここでは、サイト名とページ ID として 2 つのパラメーターを持つ pages.php を示します。これを次のように書き換えたい

http://localhost/testing/test/2

両方の条件で、動作していない次のコードがあります

RewriteEngine on
RewriteRule ^([^/\.]+)/?$ site.php?site=$1 [L]
RewriteRule ^([^/\.]+)/?$ pages.php?site=$1&pid=$2 [L] 

助けてください

ありがとう :)

4

2 に答える 2

4

次の手順を実行して、サーバーmod_rewriteの電源を入れる必要があります。Apache

  1. xamppディレクトリ内のフォルダーを解凍したと仮定C:\して、Apache 構成ファイルを含むフォルダーに移動します。フルパスはC:\xampp\apache\conf\.

  2. conf フォルダーに、 という名前のファイルがありますhttpd.conf。このファイルには、apache のすべての構成パラメーターが含まれています。ファイルをテキスト エディタで開きます。

  3. を検索するmod_rewrite.soと、次のような行に出くわします。#LoadModule rewrite_module modules/mod_rewrite.so

  4. ハッシュ (#) マークを削除して、行のコメントを解除します。

  5. ファイルを保存し、Apache Web サーバーを再起動します。

また、ファイルが既にtestingフォルダーにある場合、コードは次のようになります。

RewriteEngine on
RewriteRule ^site\.html$ site.php?site_id=$1
于 2012-08-22T06:49:10.740 に答える
1

私は私のために働いた解決策を得ました。

RewriteEngine on
RewriteRule ^([^/\.]+)/?$ site.php?site=$1 [L]
RewriteRule ^([^/]+)/([^/\.]+)/?$ pages.php?site=$1&pid=$2 [L,QSA]

みんな、ありがとう :)

于 2012-08-22T21:02:35.007 に答える