关闭

.htaccess

125人阅读 评论(0) 收藏 举报

我们都知道每一次的页面访问都是一次独立的运行

要在不同访问时共享数据一般是通过session,post,get,url传参

我们知道框架的一些配置都是通过入口文件来一步步导入(像require这样)的,

那不经过入口 是如何保持这些配置的呢

这就是通过.htaccess来实现的

就比如lara 

    RewriteEngine On
 
    # Redirect Trailing Slashes If Not A Folder...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)/$ /$1 [L,R=301]

    # Handle Front Controller...
如果请求的不为目录文件
    RewriteCond %{REQUEST_FILENAME} !-d
# 如果请求的不为普通文件
RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^ index.php [L]


RewriteCond就相当于if语句

RewriteRule Pattern Substitution [Flags]

pattern 就是一个正则,sub就是重定向页面  [L]代表立刻重定向

如果不是 文件也不是目录将全部的请求重定向到index.php (.htaccess还可以设置很多,设置访问的user-agent,用此来放盗链)

这样就实现统一的入口文件

然后一次导入 用require boostarp/app.php 创建全局都要的$app

并依靠routes.php等实现restful api (REST是面向资源的,所以一个Web API旨在实现针对单一资源的操作)

(REST 表现层资源转换 URI定位资源 资源就是服务器上一个文件 表现层 文件的呈现形式 状态转换 客户与服务器端的交互如服务器发生状态转换

客户端通过四个HTTP动词,对服务器端资源进行操作,实现"表现层状态转化"

/get /put /delete /post)


附:.htaccess只要apache开启

AllowOverride All 就允许重写配置文件(apache2.conf)

.htaccess与apache2.conf配置文件不同的是,它只作用于当前目录

另外apache2.conf是在Apache服务启动的时候就加载的,而.htaccess只有在用户访问目录时加载,开销大、速度慢。

但.htaccess强大 简单,所以还是非常有价值的

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:9552次
    • 积分:596
    • 等级:
    • 排名:千里之外
    • 原创:51篇
    • 转载:4篇
    • 译文:0篇
    • 评论:0条
    文章分类