2016-09-03 9 views
0

ユーザーがwww.mywebsite.com/hello.phpのようなリンクをクリックするたびに、彼のアドレスバーにwww.mywebsite.comが表示されます。私はこのために.htaccessファイルを修正しようとしました。ルールはホームページのために働いた。しかし、リンクをクリックするたびに、そのリンクのPHPページがアドレスバーに表示されます。リンクをクリックした後でも、どのようにページの名前を隠すことができますか。ウェブサイト訪問者からページURLを非表示にする方法は?

RewriteEngine On 
RewriteRule ^site$ /*.php [L] 

例:私がmywebsite.com/index.phpと入力すると、mywebsite.comと表示されます。しかし、<a href="mypage.php">My Page</a>のようにページ内のリンクをクリックすると、URLにmywebsite.com/mypage.phpが表示されます。

+2

可能な重複 [参考:MODの\ _rewrite、URLの書き換えと "かわいいリンクは" 説明](http://stackoverflow.com/questions/20563772/reference-mod-rewrite-url-rewriting-and- pretty-links-described) –

答えて

0

.htaccessには、パスごとにリダイレクトルールを追加します。各ルールは、ブラウザが人間に優しい経路を要求したときにどのWebページが配信されるかをサーバに通知します。例えば:あなたのページで次に

Rewrite On 
RewriteRule ^home/?$   /home.php  [END,NC] 
RewriteRule ^about/?$   /about.php  [END,NC] 
RewriteRule ^products/?$  /pages/products.php  [END,NC] 
... 

、のhrefのためにかなりのリンクを使用します。

<a href="/products">Products</a> 
0

私はここに二つの問題があると思う:

  1. あなたのリンクは<a href="mypage.php">My Page</a><a href="mypage">My Page</a>する必要があります

  2. 私が理解しているところでは、1つの仕様URLを転送する必要がありますので、RewriteRule ^(.*)$ $1.phpのようなより一般的なルールを記述する必要があります。これにより、.php拡張子を持たないURLにアクセスできます。

関連する問題