将symfony2部署到文件夹中

时间:2013-04-24 08:30:24

标签: symfony web-deployment

作为symfony1.4开发人员,我正在尝试学习Symfony2。

现在,我想在我的服务器上使用我的测试站点,而不是尝试我的本地机器,一切正常。但我不想将它部署在真实网站或真正的子域上。

这就是我的问题:如何在没有修改虚拟主机的情况下在子文件夹上部署此测试?!

假设我有一个可用的网站www.example.com,但我希望我的symfony测试可用(并且正常工作)www.exaple.com/mysymfonytest

somone已经这样做了吗?

...谢谢

3 个答案:

答案 0 :(得分:0)

在我看来,这不是一个与symfony相关的问题。

根据您的网络服务器,您可以配置别名应指向的别名。

在Apache中,您可以指定文档根目录,放置sf2安装位置,然后定义一个别名,该别名将是/ mysymfonytest指向该文档根目录。

或者,您可以指定文档根目录,保留网址并为symfony中的所有路由定义前缀,您可以在路由配置中执行此操作。

我强烈建议您配置您的网络服务器。

例如在apache中:

<VirtualHost *:80>
    DocumentRoot /var/www/mysymfonytest
    Alias /mysymfonytest /var/www/mysymfonytest
    <Directory /var/www/mysymfonytest/web>
            AllowOverride None
            Order allow,deny
            Allow from all

            #Allow from <SUPPORT>
            RewriteEngine On
            RewriteBase /mysymfonytest
            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteRule ^(.*)$ /app.php [QSA,L]
    </Directory>
</VirtualHost>

或者,如果您无法添加VHost: How to add a prefix to all my routes

答案 1 :(得分:0)

/(根目录)下创建一个子目录并将其命名为mysymfonytest,然后将您的symfony2项目放在mysymfonytest中。

将一个.htaccess文件添加到mysymfonytest文件夹并输入:

<IfModule mod_rewrite.c>

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www.)?example.com$
RewriteRule ^(/)?$ web [L]

</IfModule>

或者您只需创建一个名为index.html的文件,并指向app.php

答案 2 :(得分:0)

如果您只在共享主机上运行。您可以使用.htaccess使用覆盖配置。询问您提供的是否允许覆盖,然后向他们提供脚本或告诉他们您想要的内容。希望您的托管支持能够满足。