php 伪静态规则

我想将localhost/tags.php? 的地址 伪静态写成 localhost/tags 这样的地址
请问如何实现?
具体的实际应用情况是
http://localhost/tags.php?_1041_/

伪静态成
http://localhost/tags_1041_/


服务器是IIS 可以使用httpd.ini
如果可以的话,给一个apache的写法最好
最新回答
梦忆沐歌

2022-04-18 01:18:11

1、要能够实现伪静态,服务器环境本身支持url rewrite重写功能,能正确识别出以路径符号 "/" 为间隔的url地址,这是必要的条件。
以apache为例说明如可开启伪静态:打开apache的配置文件(apache/conf/httpd.conf)找到对应的web目录配置项,修改为如下:
<Directory "YourDocumentRoot"> //前面的YourDocumentRoot改为你自己的web路径
Options Indexes FollowSymLinks ExecCGI Includes
AllowOverride All
Order allow,deny
Allow from all
</Directory>
注意:确保 AllowOverride 为 All
重启服务即可。
2、在你的web目录下添加一个.htaccess文件,在里面添加代码如下:

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond $1 !^(index\.php|robots\.txt|tags)
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>
3、再试一下就可以的了,如果不行先看一下自己的PHP版本,最好是5.0以上的,.htaccess文件的代码也调试一下。
蘇瑾熙

2023-11-27 18:07:13

你用什么解析器?
iis还是apache?
他们的方法都有所不同的