joomla去掉index.php,Joomla 去掉index.php Nginx伪静态规则 URL重写(rewriting) (已测)

Joomla是一套全球知名的内容管理系统,Joomla是使用PHP语言加上MySQL数据库所开发的软件系统。

最近小编在使用Joomla开发做一个官网时,要用到程序URL重写(rewriting) Nginx伪静态规则,去掉讨厌的index.php,在国外论坛找了好久终于找到一个可用的规则,现贴出来给需要的站长使用。

if ( $args ~ "mosConfig_[a-zA-Z_]{1,21}(=|\%3d)" ) {

set $args "";

rewrite ^.*$ http://$host/index.php last;

return 403;}

if ( $args ~ "base64_encode.*\(.*\)") {

set $args "";

rewrite ^.*$ http://$host/index.php last;

return 403;}

if ( $args ~ "(\|%3E)") {

set $args "";

rewrite ^.*$ http://$host/index.php last;

return 403;}

if ( $args ~ "GLOBALS(=|\[|\%[0-9A-Z]{0,2})") {

set $args "";

rewrite ^.*$ http://$host/index.php last;

return 403;}

if ( $args ~ "_REQUEST(=|\[|\%[0-9A-Z]{0,2})") {

set $args "";

rewrite ^.*$ http://$host/index.php last;

return 403;}

if (!-e $request_filename) {

rewrite (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$ /index.php last;

break;

}

如果上面的规则不能用,可能是你虚拟主机的问题,可以使用下面的:

if ( $args ~ "mosConfig_[a-zA-Z_]{1,21}(=|\%3d)" ) {set $args "";rewrite ^.*$ http://$host/index.php last;return 403;}

if ( $args ~ "base64_encode.*\(.*\)") {set $args "";rewrite ^.*$ http://$host/index.php last;return 403;}

if ( $args ~ "(\|%3E)") {set $args "";rewrite ^.*$ http://$host/index.php last;return 403;}

if ( $args ~ "GLOBALS(=|\[|\%[0-9A-Z]{0,2})") {set $args "";rewrite ^.*$ http://$host/index.php last;return 403;}

if ( $args ~ "_REQUEST(=|\[|\%[0-9A-Z]{0,2})") { set $args ""; rewrite ^.*$ http://$host/index.php last; return 403;}

if (!-e $request_filename) { rewrite (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$ /index.php last; break; }

如果上面的joomle的nginx rewrite伪静态规则出现图片/附件不法上传用下面这个

location / {

try_files $uri $uri/ /index.php?q=$request_uri;

}

如果上面的joomle的nginx rewrite伪静态规则地址是中文用下面这个

if (!-e $request_filename) {

rewrite (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$ /index.php last;

break;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值