.htaccess以更改查询字符串
这是我的网址:.htaccess以更改查询字符串,.htaccess,mod-rewrite,.htaccess,Mod Rewrite,这是我的网址: localhost/myweb/home.php 现在,我刚刚使用以下代码删除了文件扩展名: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME}\.php -f RewriteRule ^(.*)$ $1.php 请看这个: localhost/myweb/home 而且效果很好 现在我想更改此URL: localhost/myweb/home.php
localhost/myweb/home.php
现在,我刚刚使用以下代码删除了文件扩展名:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
请看这个:
localhost/myweb/home
而且效果很好
现在我想更改此URL:
localhost/myweb/home.php?str=tmprow
为此:
localhost/myweb/home/tmprow
您可以尝试以下方法:
Options+FollowSymlinks-多视图
重新启动发动机
重写基/
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写规则^([^/]+)/?([^/]+)?/$1.php?str=$2[L,NC]
无声地映射
http://localhost/myweb/par1
或
http://localhost/myweb/par1/par2
带或不带尾随斜杠
致:
http://localhost/myweb/par1.php
或
http://localhost/myweb/par1.php?str=par2
如有必要,根据实际设置和DocumentRoot
将RewriteBase
设置为/myweb
假定所有字符串都是可变的,myweb
假定为固定的
对于永久重定向,请将
[L,NC]
替换为[R=301,L,NC]
为什么不能再次执行相同的操作?什么意思?怎样?