2016-08-07 10 views
0

URLが実際に存在しない場合は404にリダイレクトされないという問題があります。ページ。ページが存在しない場合はリダイレクトされず、他のページのデータがないコードが表示される

は、だから私はあなたが言っていた場合、一般的にのみviewpost.php?ID =ナメクジ-テキストのポストような場合には動作しますが、viewpost.phpbloggg.phpに行くというページがありますは存在しませんが、ビューポストページコードはGET変数なしで見たかのように表示されます。だから、URLは下記これは私の.htaccess

RewriteEngine On 
ErrorDocument 404 http://www.example.com/404.php 
RewriteBase/
RewriteRule ^c-(.*)$ viewcat.php?id=$1 [L] 
RewriteCond %{REQUEST_FILENAME} !-d [NC] 
RewriteCond %{REQUEST_FILENAME} !-f [NC] 
RewriteRule ^(.*)$ viewpost.php?id=$1 [QSA,L] 
+0

はまあ、あなたの.htaccessファイルがアドレスにあり、それがページviewpost.php、前のルールに一致しないすべてのものをリダイレクトするようにサーバーを言っているのid =?なんでも-is-matchedおそらく 'RewriteRule^viewpost /(.*)$ viewpost.php?id = $ 1 [QSA、L]' –

+0

を使ってください。私もviewcatでそれを行う必要がありますか? @TonyMorello – James

+0

一貫した構造を保つことは良い習慣です。それは最初の行に必須の 'c-'があるので最後の行のようなものすべてとは一致しませんが、 '^ cart /(.*)' (0-9)*) –

答えて

0
ある bloggg.phpを示しているが、何もそれに渡されていないかのようにviewpost.phpからのコードを表示し、この empty page with no data to fill it

を示していますあなたが欲しいものachiveする

最善の方法:

RewriteEngine On 
ErrorDocument 404 http://www.example.com/404.php 
RewriteBase/
RewriteRule ^cart/([0-9]*)$ viewcat.php?id=$1 [L] 
RewriteCond %{REQUEST_FILENAME} !-d [NC] 
RewriteCond %{REQUEST_FILENAME} !-f [NC] 
RewriteRule ^post/([0-9]*)$ viewpost.php?id=$1 [QSA,L] 
+0

ありがとう@TonyMorello、助けに感謝します – James

+0

もちろん、問題ありません! ;) –

関連する問題