URL重写

伪静态

>有的朋友不喜欢连接中的index.php,或是不想让别人知道自己网站用的PHP开发,我们可以通过伪静态来达到我们的需求。

如果没有开启服务器伪静态,我们还是先要把它开启。
这儿我们以Apache服务器做演示,apache开启伪静态的方法网上有很多,这儿就不详细介绍了。

我们首先在项目根目录新建一个文件存为.htaccess

  • 如果你需要通过伪静态隐藏index.php的话,.htaccess里面内容如下
    <IfModule mod_rewrite.c>
    Options +FollowSymlinks
    RewriteEngine On
    RewriteRule ^(system) - [F,L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
    </IfModule>
    
在普通模式下效果如下:

http://servername/?m=Home&c=Index&a=user


在PATHINFO模式效果如下:

http://servername/Home/Index/user

使用PATHINFO的同时还设置了URL分隔符,效果如下

http://servername/Home-Index-user

>[warning]提示:Apache2.2与2.4服务器伪静态配置存在差异,详细介绍请自行百度。
文章导航