ホームページ >バックエンド開発 >PHPチュートリアル >疑似静的について質問があります

疑似静的について質問があります

WBOY
WBOYオリジナル
2016-06-23 13:35:20854ブラウズ

疑似静的について質問があります


Whois クエリを実行していたとき、それは疑似静的でした


http://whois.hangye5.com/womai.cn


RewriteEngine の
Rewritebase /
ErrorDocument 404 / 404.html
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$index.php?domain=$1 [QSA,PT,L]


使用これは大丈夫です


しかし、ここでもう 1 つ疑似静的ファイルを作成したいと思います
whois.hangye5.com/sitemaps/sitemap1.html
whois.hangye5.com/sitemaps/sitemap2.html
whois.hangye5.com /sitemaps/ sitemap3.html
こんな感じ


やり方がわからない、コンテンツを追加する方法がわからない
追加したものに何か問題があります。


ディスカッションへの返信 (解決策)

あなたの元の記述方法に基づいて、私はおおよそのことしか書くことができません

^(.*)/(w+)/(w+ ).html$index .php?domain=$1&p1=$2&p2=$3

リンクによると whois.hangye5.com/sitemaps/sitemap1.html
p1=sitemaps, p2=sitemap1
p1、p2 は対応するパラメータですアプリケーションを自分で変更します

http://whois.hangye5.com/sitemaps/sitemap.php?domain=1
偽が存在しない前はこのようでした
RewriteEngine on
ErrorDocument 404 /404.html
#RewriteCond %{REQUEST_FILENAME} !- d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ ./index.php?domain=$1 [QSA,PT,L]

RewriteRule ^(.*) /(w+)/(w+) .html$ /sitemaps/sitemap.php?domain=$1&p1=$2&p2=$3
これは違う気がします

これを試してみてください

RewriteRule ^(.*)/w+/[A-za -z]+(d+ ).html$index.php?domain=$2

ErrorDocument 404 /404.html の RewriteEngine
#RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ (.*)$ . /index.php?domain=$1 [QSA,PT,L]

RewriteRule ^(.*)/w+/[A-za-z]+(d+).html$ /sitemaps/sitemap .php?domain=$2

これは機能しません

Index.php と sitemaps/sitemap.php は別のファイルです

書き換え前: http://whois.hangye5.com/sitemaps/sitemap.php?domain =1
書き換え後 :http://whois.hangye5.com/sitemaps/sitemap1.php

RewriteRule ^(.*)/sitemaps/sitemap(d+).html$ $1/sitemaps/sitemap.php?domain=$2

もう一度試して、うまくいかなかったら、何もすることができません...

間違っています


書き換え後: http://whois.hangye5.com/sitemaps/sitemap1

いいえ、彼は。引き続き、index.php に移動します。この問題はおそらく、最初の疑似静的

RewriteRule ^(.*)$ ./index.php?domain=$1 [QSA,PT, L]

このルールは、実際には存在しないすべてのページを削除します。 Index.php
その L は書き換えルールの処理を終了することを意味します。つまり、後続のルールが正常に一致する限り、それらは再度チェックされません (リソースの無駄を避けるため)

したがって、この記事は前に書く必要があります
RewriteRule ^(.*)/(w+)/(w+).html$ /sitemaps/sitemap.php?domain=$1&p1=$2&p2=$3

ErrorDocument 404 /404.html の RewriteEngine

RewriteCond %{REQUEST_FILENAME } -d
RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^(.*)/sitemaps/sitemap(d+).html$ $1/sitemaps/sitemap.php?domain=$2
RewriteRule ^(.*)$ Index.php?domain=$1 [QSA,PT,L]



これは機能しません。おそらく最後のものが次のものに影響を与えたためです

ErrorDocument 404 /404.html の RewriteEngine

RewriteRule ^sitemaps/ sitemap([0-9 ]+).html$ /sitemaps/sitemap.php?domain=$1 [L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*) $index.php?domain =$1 [QSA,PT,L]

以上です

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:PHPのこの自己親次の記事:PHPのこの自己親