0

我今天开始研究 Htaccess 并尝试了它。我想要实现的是,每当您访问 localhost/index.php 时,它都会将您重定向到“漂亮”的 URL(在本例中为:localhost/home)。

这是我目前的 Htaccess 文件:

RewriteEngine on
RewriteRule ^home/?$ index.php [NC,L]

我知道我目前正在做的只是将 /home 重写为 /index.php 但我也不知道如何做相反的事情..

帮助将得到appericiated!

4

2 回答 2

1

您需要一个新的重定向规则:

RewriteEngine on

RewriteCond %{THE_REQUEST} /(home|index\.php)[?\s] [NC]
RewriteRule ^(index\.php|home)$ / [NC,R=302,L,NE]

RewriteRule ^home/?$ index.php [NC,L]
于 2015-07-15T15:13:01.453 回答
1

您可以尝试以下条件和规则(评论解释):

RewriteEngine On

# Check that the request is for `index.php`
# prevent infinite looping:
RewriteCond %{REQUEST_URI} ^/index.php$ [NC]
RewriteCond %{ENV:REDIRECT_STATUS} !200

# If the conditions match, redirect to `/home`:
RewriteRule ^ /home [R=302,L,NE]

# Serve `index.php` for requests made to `/home`
RewriteRule ^home/?$ /index.php [NC,L]
于 2015-07-15T15:43:28.637 回答