0

私はSEOの目的のために私のウェブサイトのためにURLをより良くしようとしています。

現在、ページは次のように表示されます。

SITE/[number]-[page name].html

以下のような形式でページを表示させたいのですが。

example 1.
SITE/[page name].html 

また

example 2.
SITE/[page name]-[number].html 

(例1のように、可能であればページ番号を省略したいのですが、ページ番号を含める必要がある場合は、上記の2番目の例のようにURLの最後に付けたいと思います。)

.htaccessファイルには次のルールがあります。

RewriteRule ^([0-9]+)-(.*)$ site_page.php?page=$1

私の最大の問題は、必要なことを実行するためにリライトを取得するために多くの方法を試したことです。書き直しに関しては、私は完全な初心者です。

書き直しを喜んで次のように変更しました。

RewriteRule ^(.*)-([0-9]+)$ site_page.php?page=$1
RewriteRule ^(.*)-([0-9])$ site_page.php?page=$1
RewriteRule ^(.*+)-([0-9]+)$ site_page.php?page=$1
RewriteRule ^([.*]+)-([0-9]+)$ site_page.php?page=$1

上記で私が試したのはページID番号を保持することでしたが、できれば番号を完全に削除したいと思います。

私は、ウェブサイトが関連するリンクを作成する方法を制御するsetting.phpファイルに次の行を持っています。そして、私が望むようにそれらを表示します。しかし、書き換えルールが期待どおりに表示されていないと思うため、404エラーが発生します。

// non seo url
$setup_url['normal']['resource']     = "$url_base/site_page.php?page=[number]"; 

// seo url
$setup_url['seo']['resource']    = "$url_base/[number]-[name].html";

私はmod書き換えルールに関する非常に多くの記事を見てきましたが、どこにも行き着いていないようです。どんな助けでも大歓迎です。

どうもありがとう。マーク。

4

1 に答える 1

1

.htmlルールの拡張子を忘れたようです。

RewriteRule ^(.+)-(\d+)\.html$ site_page.php?$1=$2 [L]
于 2013-01-09T13:33:10.447 に答える