ホームページ  >  記事  >  バックエンド開発  >  .htaccess を PHP ディレクトリ内のファイルにリダイレクトします

.htaccess を PHP ディレクトリ内のファイルにリダイレクトします

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

.htaccess を次のように設定する方法を教えてください:
ルート ディレクトリのリソース フォルダー内のコンテンツを除き、他のパスはルート ディレクトリのindex.php にリダイレクトされます
例:
http://www.doman .com/resource/. *リダイレクトなし

http://www.doman.com/index.html
http://www.doman.com/config.php
http://www.doman.com/views /index.html
http://www.doman.com/XXX/XX.html
......
上記と同様に、リソースにないコンテンツは http:/ にリダイレクトされます。 /www.doman.com/index.php

ありがとうございます!


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

Redirect 301 ^(^resource)$ http://www.doman.com/index.php

RewriteCond resource/.* !-d
RewriteRule ^(.* )$index.php/$1 [QSA,PT,L]

リダイレクト 301 ^(^resource)$ http://www.doman.com/index.php




RewriteCond resource/.* !- d
RewriteRule ^(.*)$index.php/$1 [QSA,PT,L]


申し訳ありませんが、上の 2 人は私が期待していた結果と一致しません
http://www.doman にアクセスしました。 /index.html などは http://www.doman.com/index.php にリダイレクトされません

不可能です!正しく書いたかどうか、.htaccessが有効かどうかは疑問です

無理です!正しく書いたかどうか、.htaccessが有効になったかどうかは疑問です


意図的に.htaccessを間違って書いたら、ページにサーバーエラーメッセージが表示されます

無理です!正しく書いたかどうか、.htaccess が有効かどうかは疑問です

.htaccess に文字列を書き込むだけで表示されます
内部サーバーエラーこれ それなら問題ありません

私が指定したルールに基づいています! on 実際のテスト

それなら問題ありません!

私が与えたルールは実際のテストです
これに変更すればOKです Apacheのバージョンに関係していますか?

RewriteEngine On
#RewriteCond resource/.* !-d
RewriteRule ^(?!resource)(.*)$index.php [QSA,PT,L]

最後にこれに単純化することが可能です

RewriteEngine On
RewriteRule ^(?!resource).*$index.php [PT,L]

最後に、これを単純化することが可能です

RewriteEngine On
RewriteRule ^(?!resource).*$index.php [PT,L ]

上記は resource.html を渡すことを許可します。次のように変更します

RewriteEngine On
RewriteRule ^(?!resource /).*$index.php [PT,L]
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。