我正在使用PHP codeigniter和chriskacerguis / codeigniter-restserver。
我的目录结构如下
├───cache
├───config
├───controllers <-- api.php
│ └───api
├───core
├───helpers
├───hooks
├───language
│ ├───bulgarian
│ ├───english
│ └───portuguese-brazilian
├───libraries
├───logs
├───models
├───third_party
└───views
└───errors
├───cli
└───html
我的.htaccess如下
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
<IfModule mod_headers.c>
Header set Cache-Control "no-cache, no-store, must-revalidate"
Header set Pragma "no-cache"
Header set Expires 0
</IfModule>
我编辑了config.php条目
$config['index_page'] = 'index.php';
在我的本地笔记本电脑上,一切都非常完美。 当我将代码移动到服务器时,它无法正常工作。
例如,访问网址http://www.example.com/pal/api/class/
-geting 404
虽然,如果我在本地做:http://localhost:88/pal/api/class/
它返回我的输出JSON
我注意到,在服务器上的日志文件中(不在本地),url实际呈现为http://www.example.com/pal/api/class/index
我假设url末尾的/ index导致问题。
有人可以建议如何解决这个问题吗? 在移动到服务器之前,我扫描并清除了我的代码中的所有hardcord“localhost”...
**my **routes.php** is as below**
$route['default_controller'] = 'welcome';
$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;