Laravel - 包括外部项目

时间:2016-02-22 14:00:18

标签: php laravel laravel-5.2

在Laravel项目中,我必须包含多个项目,以便在/ example中可以访问它们。 这些项目具有

的结构
/example
 - index.php
 - main.css
 - app.js

(Usually there are more files then that.)

我尝试使用Redirect::to("example/index.php"),但这会打破所有<link>和&amp; <src>(我需要在其中添加/example

这在理论上是可行的,但是我宁愿不将这些文件存储在Laravel项目本身中,因为它们基本上是自包含的项目。

包含此类外部项目的最佳方式是什么?

1 个答案:

答案 0 :(得分:0)

  

这在理论上是可行的,但我宁愿不将这些文件存储在Laravel项目本身,因为它们基本上是自包含的项目。

这是一个很好的方法。而是将Laravel保留为Laravel并在Laravel项目之外托管这些东西。

由于您使用的是Apache,以下是如何为该外部项目创建虚拟主机。

请注意 - 我假设您的项目位于/var/www

  1. 决定该项目的网址 - 我会使用example.mylaravelproject.com。但是任何事都可以。
  2. 确认项目文件夹的路径。对于此示例,我们假设它是/var/www/example/
  3. 运行以下命令(假设您使用的是Ubuntu) - sudo nano /etc/apache2/sites-available/example.mylaravelproject.com.conf
  4. 确保新文件包含以下内容:
  5. <VirtualHost *:80> ServerAdmin <your email address here> ServerName example.mylaravelproject.com DocumentRoot /var/www/example ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>

    1. 保存并关闭文件
    2. 运行以下命令sudo a2ensite example.mylaravelproject.com.conf
    3. 运行sudo nano /etc/apache2.conf
    4. 确保此行显示在此文件的某个位置(最好位于<Directory>标记中 - AddType application/x-httpd-php .php
    5. 然后通过发出以下命令sudo service apache2 restart
    6. 重启Apache

      从技术上讲,您的网站现在有一个有效的虚拟主机,应该正常运行。

      如果您在本地环境中执行此操作并希望通过浏览器访问示例项目,则需要完成以下几个步骤:

      1. sudo nano /etc/hosts - 再次假设您正在运行Ubuntu
      2. 将此行添加到项目的某处:localhost example.mylaravelproject.com

      3. 保存并关闭该文件。您现在应该可以通过浏览器访问该网址。

      4. 如果这些步骤不起作用,那么Apache可能不会解析PHP文件。如果是这种情况,请尝试使用这些链接获得关于使Apache解析PHP的一些好答案: