我下载Silex是因为我想在下一个项目中试用它。我在Windows 8.1 64x下使用mamp,我认为这无关紧要,但无论如何,我将Silex放入C:''mamp''htdocs''projectfolder''(http://locahost/projectfolder/)
这意味着我得到了http://locahost/projectfolder/vendor
和http://locahost/projectfolder/web/
我在"web"目录下写了这个.htaccess
选项-多视图
RewriteEngine On
RewriteBase /projectfolder/web
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
如果我进入http://locahost/projectfolder/web/hello
,它会非常完美,但我想来自/projectfolder/,所以我在/projectfolder中创建了一个新的htaccess文件,其中包含以下内容:
选项-多视图
RewriteEngine On
#RewriteBase /projectfolder
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ web/index.php [L]
但当我运行它时,应用程序返回NotFoundException:对不起,找不到你要查找的页面。
提前感谢
我也是silex的新手,所以如果有人有更好的见解,请告诉/教我们:)
我决定在silex的一个单独的文件夹上创建一个项目,我所做的是,我创建了一个新的index.php,需要silex的autoload.php和一个基本相同的.htaccess。
所以,我有这样的结构:
/myproject/silex/
/myproject/app/
/myproject/app/index.php
/myproject/app/.htaccess
我的.htaccess
<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [QSA,L]
</IfModule>
和我的index.php
<?php
require_once __DIR__.'/../silex/vendor/autoload.php';
...
顺便说一句,我配置了一个指向/myproject/app/的vhost
希望这能有所帮助。