Я скачиваю Silex, потому что хочу попробовать его в следующем проекте. Я использую mamp под Windows 8.1 64x, я думаю, что это не имеет значения, но, в любом случае, я помещаю Silex в C: \ mamp \ htdocs \ projectfolder \ (http://locahost/projectfolder/)
Это значит, что я получил http://locahost/projectfolder/vendor
а также http://locahost/projectfolder/web/
Я написал этот .htaccess в каталоге «web»
Опции -MultiViews
RewriteEngine On
RewriteBase /projectfolder/web
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
Это прекрасно работает, если я приду в http://locahost/projectfolder/web/hello
, но я хочу прийти из / projectfolder /, поэтому я создал новый файл htaccess в / projectfolder с этим содержимым:
Опции -MultiViews
RewriteEngine On
#RewriteBase /projectfolder
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ web/index.php [L]
Но когда я его запускаю, приложение снова запускает NotFoundException: извините, искомая страница не может быть найдена.
заранее спасибо
Я тоже новичок в тишине, поэтому, если у кого-то есть лучшее понимание, пожалуйста, расскажите / научите нас 🙂
Я решил создать проект в отдельной папке из Silex и, что я сделал, я создал новый index.php, требующий файла 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';
...
Кстати, я настроил vhost для указания на / myproject / app /
Надеюсь это поможет.
Других решений пока нет …