0

.htaccessファイルを取得し、別のバニティURLに2番目のルールを追加したいのですが、すでにページを宣言しているものがあります。では、自分のページに移動できるように、そして次の虚栄心がプロファイルの変数になるように、どのようにそれを書くのでしょうか?

Ex:// mywebsite.com/page/profile 

これが私の現在の.htaccessファイルです。

RewriteEngine On

RewriteBase /

RewriteRule ^([a-zA-Z0-9-]+)$ index.php?p=$1 [L]

RewriteRule ^([a-zA-Z0-9-]+)/$ index.php?p=$1 [L]
4

1 に答える 1

1

例を見てみましょう。

現在のURLはですhttp://domain.com/myurl。これは、http://domain.com/index.php?p=myurl この種類のhtaccessを使用してこのページのバニティURLを追加できることを示しています。

RewriteEngine On
RewriteBase /
RewriteRule ^myvanityurl/?$ myurl [L,R=301]
RewriteRule ^([a-zA-Z0-9-]+)/?$ index.php?p=$1 [L]

次に、http://domain.com/myvanityurlにリダイレクトしますhttp://domain.com/myurl

このリダイレクトを透過的にしたい場合(別名、myvanityurlURLバーに保持)、R=301ルールからタグを削除します。


編集

編集後、これはあなたが探しているものです:

RewriteEngine On
RewriteBase /
RewriteRule ^([a-zA-Z0-9-]+)/([a-zA-Z0-9-]+)$ index.php?p=$1&profile=$2 [L]
RewriteRule ^([a-zA-Z0-9-]+)/([a-zA-Z0-9-]+)/$ index.php?p=$1&profile=$2 [L]

次に、http://domain.com/edit/756にリダイレクトしますhttp://domain.com/index.php?p=edit&profile=756

このコードは次のように簡略化できます。

RewriteEngine On
RewriteBase /
RewriteRule ^([\w-]+)/([\w-]+)/?$ index.php?p=$1&profile=$2 [L]
于 2012-11-21T21:54:33.097 に答える