Heim > Artikel > Backend-Entwicklung > apache - PHP框架:yaf的入口文件index.php是放到根目录还是public下面?
很多框架都是把index.php放到public下面,但是看到yaf框架有两个版本(github和文档),那最好是放到哪里呢?
我试着把它放到public下面,http://localhost/yaf_test/是无法访问的,但是http://localhost/yaf_test/public是能重定向到默认controller下面的,那要怎么配置才能省略public呢(index.php放在public下面)?
很多框架都是把index.php放到public下面,但是看到yaf框架有两个版本(github和文档),那最好是放到哪里呢?
我试着把它放到public下面,http://localhost/yaf_test/是无法访问的,但是http://localhost/yaf_test/public是能重定向到默认controller下面的,那要怎么配置才能省略public呢(index.php放在public下面)?
apache或nginx配置虚拟路径指向项目的public文件夹
apache的httpd.conf中开启路径重写,去掉前面#号
<code>LoadModule rewrite_module modules/mod_rewrite.so </code>
httpd-vhosts.conf中配置一个虚拟路径
<code><virtualhost> #监听端口 ##ServerAdmin webmaster@dummy-host2.example.com #管理员邮箱 DocumentRoot "" #项目路径 ServerName xxx.xxx.com #访问网址 ##ErrorLog "logs/dummy-host2.example.com-error.log" #错误日志 ##CustomLog "logs/dummy-host2.example.com-access.log" common #访问日志 </virtualhost> </code>
hosts中配置
<code>127.0.0.1 xxx.xxx.com </code>
重启apache,访问xxx.xxx.com
鸟哥的博客文档典型目录结构也是将index.php放在public中
http://www.laruence.com/manual/tutorial....
public/index.php
最好就放这一个文件, 这样才能实现单入口
nginx配置root指向public
<code>server{ ... root /xxx/xxxx/public; ... }</code>
这样考虑目录安全性,比如配置目录 conf 就不用再去单独限制访问
放到public下边吧
我看了很多其他框架的目录结构,yii,zend framework,laravel是把.htaccess和index.php放到public下面的,phalcon是把.htaccess放到根目录,index.php放到public下面的