1

PHP で URL を介して渡された変数に基づいてコンテンツを変更する単一ページの Web サイトがあります。

たとえば、私のURLは次のように表示されます

www.mysite.com/index.php?section=home
www.mysite.com/index.php?section=about-us

メインナビゲーションでクリックするリンクに応じて、など。

www.mysite.com/homeURL をorとして読みたいwww.mysite.com/about-us

これを 1 ページのサイトにする前は正しく機能していたため、mod-rewrite 機能が有効になっています。

私はこれを試しました...

RewriteEngine on
RewriteBase /
RewriteRule ^home/?$ index.php?section=$1 [NC,L]

Google と StackOverflow で見つけたすべての提案を試しましたが、何も機能していません。

どんな助けでも大歓迎です!

4

3 に答える 3

1

私は.htaccessまったく同じ目的のために持っており、それは美しく機能しています。私のコードは以下です。

RewriteEngine On
RewriteRule ^([^/\.]+)/?$ index.php?id=$1 [L]

当然のことながら、index.phpメインの PHP ファイルでない場合は、それを置き換えてください。また、サンプルコードが使用している場合?idに置き換えます。?section

[^/\.]+手段が言っていることI need you to find text that contains anything but a period (.) or a forward slash (/), and there has to be at least one character in it.

例として、私が使用しているウェブサイトNorthside Aikidoにアクセスしてください。

ご不明な点がございましたら、お気軽にお問い合わせください。

編集

このコードは自動的に に変わるわけではないことhttp://www.example.com/index.php?section=homeに注意してください。これhttp://www.example.com/homeは、後者のリンクが前者のように機能することを意味するだけです。自動的に置き換えたい場合は、1 行以上のコードが必要になります。

于 2012-06-14T01:54:47.953 に答える
1

これは私が使用しているものです:

<IfModule mod_rewrite.c>
   RewriteEngine on
   RewriteRule ^([A-Za-z0-9-]+)/?$     index.php?section=$1 [NC,L]
</IfModule>
于 2012-06-14T01:59:50.670 に答える
1

ほとんど

RewriteEngine on
RewriteBase /
RewriteRule ^([a-zA-Z0-9-]+)/?$ index.php?section=$1 [NC,L]
于 2012-06-14T01:38:23.347 に答える