我在php slim框架中创建REST API,我使用它就好了。本地一切都运行良好,但我在网上运行时遇到了麻烦。我有大学的服务器,那里有很多学生项目,所以我的休息api的路线是:
的/ var / WWW /项目/ myProject的/ bpsql
在bpsql文件夹中,有包含composer.json文件的public,vendor和app文件夹。在我的公共文件中有htaccess文件导致问题(我认为)。该文件应该如何看待,你认为我应该改变这个:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ index.php [QSA,L]
我尝试添加行RewriteBase projects/myproject/bpsql/public
但没有任何效果。
非常感谢任何帮助!
编辑:
apache modules on server got by `print_r(apache_get_modules());
Array
(
[0] => core
[1] => mod_log_config
[2] => mod_logio
[3] => mod_version
[4] => prefork
[5] => http_core
[6] => mod_so
[7] => mod_alias
[8] => mod_auth_basic
[9] => mod_authn_file
[10] => mod_authz_default
[11] => mod_authz_groupfile
[12] => mod_authz_host
[13] => mod_authz_user
[14] => mod_autoindex
[15] => mod_cgi
[16] => mod_deflate
[17] => mod_dir
[18] => mod_env
[19] => mod_mime
[20] => mod_negotiation
[21] => mod_php5
[22] => mod_reqtimeout
[23] => mod_rewrite
[24] => mod_setenvif
[25] => mod_ssl
[26] => mod_status
)
/var/www //echo getenv("DOCUMENT_ROOT") ;
答案 0 :(得分:2)
我猜你是在Linux上,但如果是的话。看来你没有启用mod重写。所以以下内容可能会有所帮助。
a2enmod rewrite
service apache2 restart
但是为了更容易在https://stackoverflow.com/help/mcve进行错误修正,有关设置和/或日志的更多信息会有所帮助。
答案 1 :(得分:2)
好的,想想问题所以如果将来有人遇到同样的问题,这就解决了我:
AllowOverRide None
更改为AllowOverride All
特别感谢@David Pastore提供解决问题的所有帮助和帮助。