nginx配置url重写与apache配置url重写

apache配置url重写
LoadModule rewrite_module modules/mod_rewrite.so将前面的注释去掉
修改httpd.conf, 把AllowOverride none改为Allowoverride FileInfo或者Allowoverride All, 使Apache能够读取.htaccess的内容(注意要改动配置文件的全部Allowoverride: 我的需要改动三处才能生效)
在项目根目录下添加.htaccess文件, 文件内容为:3. 在项目根目录下添加.htaccess文件, 文件内容为:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]

重启Apache

实际上apache配置url重写与htaccess文件相关联,其运行基本就是靠htaccess文件进行关键和重写的。我不建议各位使用apache了,实际上apache在运行效率上和nginx还是差的太远了,可能在你们测试或者小项目的时候没有什么感觉,但是真的到大项目就会有明显的性能区别。

nginx配置url重写
网上在各种说

location / {
    try_files $uri $uri/ /index.php?$query_string;
}

添加这条记录就可以满足url重写功能,实际上我们在用的时候根本就不会理解为什么这么用,以至于我们配置了还发现用不了,首先,我们来说一下try_files 这个实际上我们可以把他理解为一个系统内部重定向,
我们再来理解一下

$uri  $request_uri 和$query_string 不明白不要紧,

$uri指的是请求的文件和路径,不包括“?”或者“#”之后的东西,$request_uri则是请求的整个字符串,包含了后面的$query_string的。这样说你就可能明白了,这样,我们立马就明白了为什么这么配置不行,实际上,我们只需要加一条这样的配置就可以了

    try_files $request_uri /index.php/$request_uri;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值