[英]Use non-Symfony code in Symfony project
我有一個非Symfony項目,我想將其包含在Symfony項目中。
該項目有許多形式相對的路徑,例如
<form action="actions/check.php">
<input type="text" name="pages">
<input type="submit" value="Check">
</form>
或包含諸如include '../include/class.php';
類的文件include '../include/class.php';
完全將其更改為在Symfony中工作將非常麻煩,那么有什么方法可以使這些相對路徑在Symfony項目中起作用?
我已經將該項目包含在一個包中的文件夾中,但是顯然提交表單會將我發送到該網站上不存在的相對頁面,因為未為該頁面定義路線。 例如,對於以上表格,我被發送到mywebsite/actions/check.php
。
為這些路由創建路由不會做很多事情,因為我需要為它們創建Symfony控制器,這意味着我需要重做項目,並從這些控制器中的原始文件中復制/粘貼代碼。
在Symfony項目中是否可以將非Symfony代碼與相對路徑一起使用? 我在想相對包含路徑會起作用,但是表單動作呢?
您試圖繞過路由器將腳本作為靜態文件提供。 通常,框架使用靜態路由來服務CSS,JS,JPG,PNG等。您的靜態.PHP文件應位於該文件夾中。
這個答案: 在Symfony2項目中呈現靜態內容討論了如何使用.htaccess文件繞過symfony路由器,我認為您已經在其中包含了條件(RewriteCond):
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ app.php [QSA,L]
</IfModule>
它告訴我們的是:如果文件存在於文件夾結構中,它將不使用路由器,而是將其原樣提供。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.