0

URL を次のように書き換えたい:

http://domain.com/edit.php?proname=abc

に:

http://domain.com/abc

これは .htaccess の現在の書き換えコードです:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z0-9-]+)$ edit.php?proname=$1 [L,QSA]
RewriteRule ^([a-zA-Z0-9-]+)/$ edit.php?proname=$1 [L,QSA]

コード「ちょっと」は機能します。問題は、すべての「編集」URL を同じ変数で書き換えることです。たとえば、3 つのプロジェクトを含むテーブルがあり、各プロジェクトには「編集」ボタンがあります。プロジェクト 2 または 3 の「編集」ボタンをクリックすると、プロジェクト 1 の編集ページが表示されます。すべての編集リンクは、最初のプロジェクトの編集ページを参照しています。

何が原因でしょうか?

解決済み: PHP スクリプトに論理エラーがあったことが判明しました。ありがとう、オラフ!

4

1 に答える 1

1

htaccess は簡略化できますが、今のところ正しいようです。問題はedit.phpスクリプトにあるはずです。

注意: 2 つのルールを 1 つのルールに減らすことができます。

RewriteRule ^([a-zA-Z0-9-]+)/?$ edit.php?proname=$1 [L,QSA]

しかし、これはあなたの問題を解決しません。

于 2013-04-19T06:28:21.830 に答える