【问题标题】:How do you configure Symfony 4 to route alongside other XAMPP (Apache) projects?你如何配置 Symfony 4 与其他 XAMPP (Apache) 项目一起路由?
【发布时间】:2023-03-16 23:58:01
【问题描述】:

我对 Symfony 来说是全新的,所以这个问题无疑会让人觉得很无聊。你如何让 Symfony 与 XAMPP 一起工作?我已经阅读了配置 Apache 的 Symfony 文档,但无法完全理解它。

XAMPP 项目存储在单个 /htdocs 目录中。每个项目都有自己的子文件夹,可通过以下 URL 访问:http://localhost/project_folder。至少,我一直是这样做的。

我的问题是这样的: Symfony 的不同之处在于它的根目录不是正面的。换句话说,要真正访问 Symfony 4 站点,您需要导航到 /public 目录。但是,由于我的本地 XAMPP(即 Apache)服务器配置为使用单个 DocumentRoot (/xampp/htdocs),除非我手动将 /public 附加到 URL,否则无法访问我的 Symfony 项目。

  • 我想要什么:http://localhost/symfony_project_folder
  • 我有什么:http://localhost/symfony_project_folder/public

我不想为单个 Web 应用程序设置完全独立的本地服务器,也不想处理与我的其他项目使用的完全不同的 URL 结构。

如何配置 Symfony 4 或 Apache 以在此环境中正确路由到 /public

感谢您的帮助。

【问题讨论】:

  • 搜索:"apache vhosts" 当然这只是用于开发然后使用内置的 Symfony 服务器。你只需要一个简单的“php bin/console server:start”。
  • 搞定了。感谢您为我指明正确的方向。如果您发布答案,我会接受。
  • 很高兴你让它工作了,但我实际上并没有给你答案。也许你可以发布一个。

标签: php apache symfony xampp symfony4


【解决方案1】:

您好,当您创建一个新的 symfony 项目时,您确实需要更改公共文件夹中域的文档根目录。使用 symfony 的一个好方法是使用 docker,它可以帮助您保持项目分离,并且您可以使用 phpdocker.io 快速生成 docker 配置以开始使用 docker。 无论如何,这里是 symfony 手册中有关如何设置虚拟主机的示例。

<VirtualHost *:80>
    ServerName domain.tld
    ServerAlias www.domain.tld

    DocumentRoot /var/www/project/public
    <Directory /var/www/project/public>
        AllowOverride All
        Order Allow,Deny
        Allow from All
    </Directory>

    # uncomment the following lines if you install assets as symlinks
    # or run into problems when compiling LESS/Sass/CoffeeScript assets
    # <Directory /var/www/project>
    #     Options FollowSymlinks
    # </Directory>

    ErrorLog /var/log/apache2/project_error.log
    CustomLog /var/log/apache2/project_access.log combined
</VirtualHost>

您可以阅读更多关于网络服务器配置的信息here

【讨论】:

    猜你喜欢
    • 2014-06-29
    • 1970-01-01
    • 2018-12-22
    • 2021-07-31
    • 1970-01-01
    • 2016-01-03
    • 2017-10-23
    • 2018-08-05
    • 2016-07-16
    相关资源
    最近更新 更多