У меня есть сайт, размещенный в /var/www/thesite
(apache server), это сайт Symfony2
, поэтому внутри этой папки у меня есть папка web
, на которую указывает мой виртуальный хост.htaccess перенаправить URI в родительский каталог
Так что мой VirtualHost является www.mysite.com -> /var/www/thesite/web
В этой веб-папке у меня есть .htaccess
форматировать URL красиво.
Теперь я добавил API в /var/www/thesite/api
, API реализован с использованием Silex
. Я хочу перенаправить все запросы http://www.mysite.com/api
в эту новую структуру.
Так я добавил в /var/www/thesite/web/.htaccess
RewriteCond %{REQUEST_URI} ^/api
RewriteRule ^api(.*)$ ../api/web/index.php [NC,QSA,L]
Но я получаю:
Bad Request
Ваш браузер послал запрос, что этот сервер не мог понять.
Я не уверен, могу ли я получить доступ к родительской папке в .htaccess
. Я не хочу менять свой целевой каталог virtualhost, чтобы избежать нарушения безопасности.
Как я могу решить эту проблему?
Почему вы не можете перемещать 'api' под'/var/www/thesite/web'? – anubhava
@anubhava, потому что 'web' доступен публично. вы не хотите, чтобы ваш исходный код был доступен. – maxwell2022