我是苗条框架的新手 . 目前在我现有的网络服务器上,这是在centos 7我运行其他基于PHP的应用程序 . 所以目前我的目录结构是这样的 .
var/www/html
phpapp1
phpapp2
apislim
我创建的apislim的文件夹是用于超薄框架 . 以下是我所做的确切步骤1.作曲家创作项目苗条/苗条骨架
2.我将slim-skeleton文件夹重命名为apislim 3.我确保所有者是apache chown -R apache:apache apislim 4.在httpd.conf中我确保启用此AllowOverride为All
<Directory "/var/www">
AllowOverride All
# Allow open access:
Require all granted
Options -Indexes
</Directory>
下面我启用了全部
<Directory "/var/www/html">
Options -Indexes -FollowSymLinks
AllowOverride All
</Directory>
- 在apislim / public文件夹中,我有这个.htaccess文件,如下所示 .
RewriteEngine On
RewriteCond% :: $ 1 ^(/ . )/( . ):: \ 2 $ RewriteRule ^( . ) - [E = BASE:%1]
RewriteCond%!-f RewriteRule ^( . *)$%{ENV:BASE} index.php [QSA,L]
- 我还有公共文件夹中的index.php文件,它也链接到路由的src和主文件夹apislim我创建了另一个.htaccess文件并添加了它 .
RewriteRule上的RewriteEngine ^ $ public / [L] RewriteRule( . *)public / $ 1 [L]
现在问题我希望我现有的应用程序与基于slim框架的rest api一起工作 . 所以当我去这个链接
http://*.*.*.*/apislim/
http://*.*.*.*/apislim/public/
http://*.*.*.*/apislim/public/index.php
这两件作品都没有给我403禁止 . 然后我检查错误日志它显示关于FollowSymLinks的错误所以我添加了选项-Indexes FollowSymLinks Into
所以我现在得到的下一个错误是500间隔服务器错误 .
1 回答
Slim应用程序必须执行以下步骤才能在子目录中工作 .
目录结构:
public/
Web服务器文件(DocumentRoot).htaccess
前端控制器的Apache重定向规则index.php
前控制器.htaccess
内部重定向到public /目录文件内容:
.htaccess
:文件内容:
public/.htaccess
:将此容器条目添加到文件中:
dependencies.php
: