0

これを取得できないことを誓います。10個のチュートリアルを読みましたが、機能させることができません...きれいなURLが欲しかったので、ディレクトリ構造は次のようになります

localhost/my_website/home.php?page=dashboard

これらのルールを持つフォルダーにファイル.htaccessがありますmy_website

#Redirect To Default Login Page
DirectoryIndex login.php

#Block Directory Listing
IndexIgnore * 

# Turn on URL rewriting
RewriteEngine On

RewriteRule ^page/([^/\.]+)/?$ home.php?page=$1 [L]

しかし、これを入力してhttp://localhost/my_website/home/dashboardも実際には何も得られません

私が得るものは

The requested URL /my_website/home/dashboard was not found on this server.
4

2 に答える 2

1

これを試すことができます:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} /([^/]+)/([^/]+)$ [NC]
RewriteRule .*  my_website/%1.php?page=%2 [L,QSA]

サイレントにマップされます:

http://localhost/my_website/anything1/anything2

に:

http://localhost/my_website/anything1.php?page=anything2

私は仮定homedashboard、質問には変数があります(何でもかまいません)。

于 2013-01-06T11:48:24.237 に答える
1

これはあなたが必要とするものです:

 RewriteEngine On
 RewriteRule ^my_website\/home\/([a-z0-9_-]+)?$ my_website/home.php?page=$1 [L]
于 2013-01-06T11:54:25.120 に答える