.htaccess 网址可以像这样重定向吗?
Can .htaccess urls be redirected like this?
我已经设置了 .htaccess,它非常适用于以下链接:
http://localhost:8888/z-jquery/view
http://localhost:8888/z-jquery/search
所以它正在删除 .php 扩展名,如果它们是手动输入的,也会重定向,这是完美的,但我还需要我的其他网址,如:
http://localhost:8888/z-jquery/edit?client=dane+kasbo
如果可能就这样:
http://localhost:8888/z-jquery/dane+kasbo
这是我的 .htaccess 文件:
Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /z-jquery/
## hide .php extension
# To externally redirect /dir/foo.php to /dir/foo
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC]
RewriteRule ^ %1 [R,L,NC]
## To internally redirect /dir/foo to /dir/foo.php
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^ %{REQUEST_URI}.php [L]
注意:我在这里搜索了很多 .htaccess 问题,但 none 对我有用,任何帮助将不胜感激。
您可以使用:
Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /z-jquery/
RewriteCond %{THE_REQUEST} /edit(?:\.php)?\?client=([^&]+)\s [NC]
RewriteRule ^ %1? [R,L,NE]
## hide .php extension
# To externally redirect /dir/foo.php to /dir/foo
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC]
RewriteRule ^ %1 [R,L,NE]
## To internally redirect /dir/foo to /dir/foo.php
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.+?)/?$ .php [L]
RewriteRule ^([^/.]+)/?$ edit.php?client= [L,QSA]
我已经设置了 .htaccess,它非常适用于以下链接:
http://localhost:8888/z-jquery/view
http://localhost:8888/z-jquery/search
所以它正在删除 .php 扩展名,如果它们是手动输入的,也会重定向,这是完美的,但我还需要我的其他网址,如:
http://localhost:8888/z-jquery/edit?client=dane+kasbo
如果可能就这样:
http://localhost:8888/z-jquery/dane+kasbo
这是我的 .htaccess 文件:
Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /z-jquery/
## hide .php extension
# To externally redirect /dir/foo.php to /dir/foo
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC]
RewriteRule ^ %1 [R,L,NC]
## To internally redirect /dir/foo to /dir/foo.php
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^ %{REQUEST_URI}.php [L]
注意:我在这里搜索了很多 .htaccess 问题,但 none 对我有用,任何帮助将不胜感激。
您可以使用:
Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /z-jquery/
RewriteCond %{THE_REQUEST} /edit(?:\.php)?\?client=([^&]+)\s [NC]
RewriteRule ^ %1? [R,L,NE]
## hide .php extension
# To externally redirect /dir/foo.php to /dir/foo
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC]
RewriteRule ^ %1 [R,L,NE]
## To internally redirect /dir/foo to /dir/foo.php
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.+?)/?$ .php [L]
RewriteRule ^([^/.]+)/?$ edit.php?client= [L,QSA]