在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项目本身中,因为它们基本上是自包含的项目。
包含此类外部项目的最佳方式是什么?
答案 0 :(得分:0)
这在理论上是可行的,但我宁愿不将这些文件存储在Laravel项目本身,因为它们基本上是自包含的项目。
这是一个很好的方法。而是将Laravel保留为Laravel并在Laravel项目之外托管这些东西。
由于您使用的是Apache,以下是如何为该外部项目创建虚拟主机。
请注意 - 我假设您的项目位于/var/www
。
example.mylaravelproject.com
。但是任何事都可以。/var/www/example/
sudo nano /etc/apache2/sites-available/example.mylaravelproject.com.conf
<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>
sudo a2ensite example.mylaravelproject.com.conf
sudo nano /etc/apache2.conf
<Directory>
标记中 - AddType application/x-httpd-php .php
sudo service apache2 restart
从技术上讲,您的网站现在有一个有效的虚拟主机,应该正常运行。
如果您在本地环境中执行此操作并希望通过浏览器访问示例项目,则需要完成以下几个步骤:
sudo nano /etc/hosts
- 再次假设您正在运行Ubuntu 将此行添加到项目的某处:localhost example.mylaravelproject.com
保存并关闭该文件。您现在应该可以通过浏览器访问该网址。
如果这些步骤不起作用,那么Apache可能不会解析PHP文件。如果是这种情况,请尝试使用这些链接获得关于使Apache解析PHP的一些好答案: