サイトのトップレベルにあるすべての動的URLを変更するmod_rewriteルールを正常に作成しましたが、今度は2番目のレベルのルールを作成する必要があります。後で、2番目の2番目のレベルの書き換えが必要になる可能性があります。 。
現時点で私はこれを持っています
RewriteEngine on
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^(.+)$ index.php?subj=$1
これは、/ contact / about / eventsなどの他のすべてのページでiutが行うように、/ index.php?subj=homeを/homeに変更するのに役立ちます。
しかし、今はイベントの下にサブページを作成したので、/ events.php?event=event-nameを/event-nameに変更する必要があります。しかし、別のルールを追加すると、サイト全体が台無しになります。私がやろうとしたのはこれです
RewriteEngine on
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^(.+)$ index.php?subj=$1
RewriteRule ^(.+)$ event.php?event=$1
しかし、それはうまくいきませんでした。
しかし、それに加えて、index.phpと/(ルート)を/homeにリダイレクトしたい
私が探し回った正しいルールを誰かに教えてもらえますか?しかし、私はそれを正しく理解できないようです。
よろしくお願いします:)
乾杯
更新:これまでのすべての助けに感謝します、iveはすべてを試しましたが、それを正しくすることができないようです。ベンが提案したように、私はURLについてもう少し情報を提供します。現在、サイト全体がサブディレクトリにあり、現在も開発中です。したがって、今のところ、mydomain.com / newwebsite / event.phpevent = 2にありますが、.htaccessファイルは現在開発のルートフォルダにあります。サイトなので、/newwebsiteディレクトリにあります。したがって、私が書き込もうとしているURLはmydomain.com/newwebsite/event/2になります。
「2」と表示されていることに気づきました。これは単にページ/イベントIDです。さらに下の行では、IDではなくタイトルになります。