Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.htaccess htaccess,将公用文件夹设为根目录_.htaccess_Codeigniter_Mod Rewrite_Codeigniter 3 - Fatal编程技术网

.htaccess htaccess,将公用文件夹设为根目录

.htaccess htaccess,将公用文件夹设为根目录,.htaccess,codeigniter,mod-rewrite,codeigniter-3,.htaccess,Codeigniter,Mod Rewrite,Codeigniter 3,我有这样的文件和文件夹结构: framework -- app ---- cache ---- config ---- controllers ---- models ---- .... -- system public -- assets ---- css ---- js ---- ... -- uploads -- .htaccess (2) .htaccess (1) 在.htaccess No.1中,我有: <IfModule mod_rewrite.c>    Opti

我有这样的文件和文件夹结构:

framework
-- app
---- cache
---- config
---- controllers
---- models
---- ....
-- system
public
-- assets
---- css
---- js
---- ...
-- uploads
-- .htaccess (2)
.htaccess (1)
在.htaccess No.1中,我有:

<IfModule mod_rewrite.c>
    Options -MultiViews

 RewriteEngine on

 RewriteRule  ^$ public/    [L]
    RewriteRule  ((?s).*) public/$1 [L]
</IfModule>

选项-多视图
重新启动发动机
重写规则^$public/[L]
重写规则(s.*)公共/$1[L]
在.htaccess 2号文件中,我有:

<IfModule mod_rewrite.c>
 RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^((?s).*)$ index.php/$1 [QSA,L]
</IfModule>

重新启动发动机
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写规则^((?s.*)$index.php/$1[QSA,L]
问题是:

  • 当我访问127.0.0.1时,它会给我CI错误404

  • 当我访问127.0.0.1/public时,它会显示欢迎页面

  • 你能帮我处理一下这个.htaccess文件吗


    谢谢。

    在您的root.htc访问中尝试此功能

    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php/$1 [L]
    </IfModule>
    
    
    重新启动发动机
    重写cond%{REQUEST_FILENAME}-F
    重写cond%{REQUEST_FILENAME}-D
    重写规则^(.*)$index.php/$1[L]
    
    试着把你的第一个字母改成大写 因此,请将其重命名为controller,而不是controller

    尝试遵循以下步骤。如果不工作,您可以将web可访问目录指向
    public
    。即
    /var/www/html
    使其成为
    /var/www/html/public