首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何强制我的PHP Symfony项目停留在开发模式?

如何强制我的PHP Symfony项目停留在开发模式?
EN

Stack Overflow用户
提问于 2016-08-10 19:19:14
回答 7查看 11.9K关注 0票数 0

如果我访问symfonyproject.local/app.php,它将使用生产环境。如果我访问symfonyproject.local/app_dev.php,它将使用开发环境。我想快速开发和测试,所以我需要任何网址来加载app_dev.php。

但是当我在开发环境中点击一个链接,比如<a href='/users'>Link</a>,它显然会加载symfonyproject.local/users,而不是我需要的symfonyproject.local/app_dev.php/users。如何强制点击dev环境中的链接自动停留在dev环境中?是否有重写所有URL的功能,或者我必须自己创建它?

EN

回答 7

Stack Overflow用户

发布于 2016-08-10 19:26:10

如果您使用路由器生成URL,则它们会自动包含/app_dev.php/。参见Symfony Twig Extensions - path()

我个人并不直接使用app_dev.php。我使用一个修改后的.htaccess,它指向app_dev.php而不是app.php。

票数 5
EN

Stack Overflow用户

发布于 2016-08-10 19:22:45

对于正确生成的链接,应使用url()方法

代码语言:javascript
复制
$this->url('@route');

或者更快的方式,您可以更改文件app.php中的环境变量,但我不建议使用这种方式。

票数 2
EN

Stack Overflow用户

发布于 2016-08-10 23:18:29

您可以考虑在您的httpd-vhosts.conf中使用如下内容

代码语言:javascript
复制
<VirtualHost *:80>
    ServerName localhost
    DocumentRoot "YOUR DOCUMENT ROOT"
    DirectoryIndex app_dev.php
    <Directory "YOUR DOCUMENT ROOT">
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
        <IfModule mod_rewrite.c>
            RewriteEngine On
            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteRule ^(.*)$ /app_dev.php [QSA,L]
        </IfModule>
    </Directory>
</VirtualHost>

它将添加一条规则,使所有请求都通过app_dev.php

  • 这只是前面提到的答案的另一种选择。
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38872004

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档