Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.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
Angular 角度6+;代码点火器相同端口_Angular_Codeigniter 3_.htaccess - Fatal编程技术网

Angular 角度6+;代码点火器相同端口

Angular 角度6+;代码点火器相同端口,angular,codeigniter-3,.htaccess,Angular,Codeigniter 3,.htaccess,我有一个角度6项目;在根目录的子目录中是带有CodeIgniter(/api)的服务器 具有404到web主页的重定向配置;我可以输入api的索引路径(/api/index.php),但是任何深入api的路径都会将我重定向到web的主页 我想知道;如何告诉Angular Routing不控制该路由(/api),或者错误重定向的原因 app.routes.ts .htaccess 重新启动发动机 重写cond%{REQUEST_FILENAME}-F 重写cond%{REQUEST_FILENA

我有一个角度6项目;在根目录的子目录中是带有CodeIgniter(/api)的服务器

具有404到web主页的重定向配置;我可以输入api的索引路径(/api/index.php),但是任何深入api的路径都会将我重定向到web的主页

我想知道;如何告诉Angular Routing不控制该路由(/api),或者错误重定向的原因

app.routes.ts

.htaccess


重新启动发动机
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写规则^(.*)$index.php/$1[L]
标题集访问控制允许原点“*”
标头集访问控制允许凭据为true

如果取消通配符路由

{ path: '**', redirectTo: 'home', pathMatch: 'full' }

您将能够访问Codeigniter视图。

它可能会工作,但问题是,如果知道404被正确重定向,我将失去安全性。告诉路由某条路由无法控制它,难道不是更好的方法吗?这可能吗?从安全角度看,Angular不会对访问某些页面做任何事情,因为所有代码都存在于客户端上,很容易被黑客攻击。您的后端必须对数据保持安全性。。。。如果您想要404页面,我会使用.htaccess而不是通配符来完成。不确定是否有方法告诉Angular如果存在通配符,就不要处理路由
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L] 
</IfModule>

<IfModule mod_headers.c>
    Header set Access-Control-Allow-Origin "*"
    Header set Access-Control-Allow-Credentials true
</IfModule>
{ path: '**', redirectTo: 'home', pathMatch: 'full' }