2011-12-08 13 views
0

私はcmsシステムであるmodxを使用しています。フレンドリーなurl-optionがあり、このような.htaccessを使います。フレンドリーなURLを展開する、modリライト

# The Friendly URLs part 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA] 

た場合は、URLは次のようになります:mysite.com/aboutとmysite.com/about/contact

私はこの.htaccessファイルを拡張したいと思いますので、私はmyste.com/aboutを書くことができます/ 2実際に存在するページ2なし。私はget変数でこれにアクセスする機能を持っていたいと思います。これはできますか?私はこの分野で何の知識も持っていません。

+2

あなたが改ページしたときの非友好的URLの外観はどうですか? ** p = 2 **のようなクエリ文字列パラメータはありますか? URLがhttp://mysite.com/index.php?q=about/contact&p=2のように見える –

答えて

0

これは.htaccessで行いますが、より良い方法はOnPageNotFoundイベントで発生するプラグインを作成することです。

myste.com/about/2は存在しないため、ユーザーを404ページに送信する前に実行されるプラグインを起動します。この場合、/ 2をURLの末尾から分割して、404に行くのではなく、データをプルするか、別のページにユーザーを送ることができます。

意味はありますか?あなたがしたいことを正確に知らなくても、それ以上寄与するのはちょっと難しいです。

+0

申し訳ありませんが、遅くとも受諾されましたが、これは素晴らしい答えです。私たちはこのように多くのプロジェクトでやりました。どうもありがとう。 – OptimusCrime

+0

問題はありませんが、これを処理することをお勧めします。私はOnPageNotFoundで起動されたプラグインを使用してルーティングされた3つのMODXリソースだけを実行している何千ものページを持つサイトを持っています。 – okyanet

関連する問題