dongnvwang8591 2016-08-25 09:06
浏览 49

使用Apache mod_rewrite循环错误

I need help with Apache2 mod_rewrite. Below is my .htaccess file:

AddDefaultCharset utf-8
php_flag magic_quotes_gpc Off
php_flag display_errors on
php_flag display_startup_errors on
Options -Indexes
php_value upload_max_filesize 20M
php_value post_max_size 20M
php_value max_execution_time 200
php_value max_input_time 200
RewriteEngine on 
RewriteCond %{SCRIPT_FILENAME} !-f 
RewriteCond %{SCRIPT_FILENAME} !-d 
RewriteRule ^(.*)$ index.php

In php code I use this:

header('Location: /404', true, 404);

When I write URLs like this:

https://localhost/somecontroller

PHP function:

public function run() {
    $URL = explode('/', $_SERVER['REQUEST_URI']);
    if (@$URL[1]) {
        //Create controllers name from url(Controller + Name);
        $controllerName = 'Controller' . ucfirst($URL[1], 1); //strtoupper(substr($URL[1], 0, 1)) . substr($URL[1], 1);
    } else {
        $controllerName = 'ControllerIndex';
    }

    if (@$URL[2]) {
        //Create actions name from url(action + Name)
        $actionName = 'action' . ucfirst($URL[1], 1);
    } else {
        $actionName = 'actionDefault';
    }

    if (@$URL[3]) {
        $param = $URL[3];
    }
    $Controller = new $controllerName(/*$this->DB*/);
    if (method_exists($Controller, $actionName)) {
        if (@$param) {
            if (@$param == '') {
                header('Location: /404', true, 404);
                exit();
            } else {
                @$Controller->$actionName($this->DB, $param);
            }
        } else {
            @$Controller->$actionName($this->DB);
        }
    } else {
        header('Location: /404', true, 404);
        exit();
    }
}

I get ERR_TOO_MANY_REDIRECTS. Can anyone help me, please?

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥20 关于多单片机模块化的一些问题
    • ¥30 seata使用出现报错,其他服务找不到seata
    • ¥35 引用csv数据文件(4列1800行),通过高斯-赛德尔法拟合曲线,在选取(每五十点取1点)数据,求该数据点的曲率中心。
    • ¥20 程序只发送0X01,串口助手显示不正确,配置看了没有问题115200-8-1-no,如何解决?
    • ¥15 Google speech command 数据集获取
    • ¥15 vue3+element-plus页面崩溃
    • ¥15 像这种代码要怎么跑起来?
    • ¥15 安卓C读取/dev/fastpipe屏幕像素数据
    • ¥15 pyqt5tools安装失败
    • ¥15 mmdetection