【问题标题】:Install Laravel for one domain only只为一个域安装 Laravel
【发布时间】:2018-02-02 07:02:57
【问题描述】:

我有一个主机,它支持多个 FTP 帐户的附加域。我正在处理一个新项目,我打算使用 Laravel。我发现的所有教程都说我需要将我的主机从 public_html 重新路由到 Laravel 的公用文件夹。 问题是我希望 Laravel 只包含在这个新项目的文件夹中,而不是包含在我已经在线的所有其他域中。 如何安装作曲家并仅在我的新项目文件夹中创建一个新项目? 我已经联系了我的主机支持,他们给了我 SSH 访问权限,这已经在工作了。

【问题讨论】:

  • 您当前的域是如何设置的?您是否有权访问 nginx/apache 配置?
  • 它们由 FTP 帐户设置,将它们重定向到域的主文件夹。我确实可以访问etc 文件夹,但我似乎找不到配置文件。但我很确定我可以使用它,因为我曾经获得过支持,他们说我可以更改它。
  • 所以一个域/ftp 帐户有一个目录,而该目录里面是 public_html 的 web 文件去哪里?
  • 您可能想了解如何在共享服务器上安装 Laravel,因为说明可能类似。
  • 哪些域的文件夹在 public_html 中

标签: php laravel ssh host


【解决方案1】:

所以假设您使用的是 apache2 并且您可以访问配置

转到 /etc/apache2/sites-enabled 并编辑您想要成为 laravel 项目的域的配置

<VirtualHost *:80>
ServerName you-newprojects-domain.com 
  DocumentRoot /var/www/public_html/newproject/public
  <Directory /var/www/public_html/newproject/public>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
    Order allow,deny
    Allow from all
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
  </Directory>
</VirtualHost>

sudo service apache2 restartsudo /etc/init.d/apache2 restart重启apache2

for nginx digital ocean 有一个简单的教程,教你如何在步骤5中配置虚拟主机 https://www.digitalocean.com/community/tutorials/how-to-set-up-nginx-virtual-hosts-server-blocks-on-ubuntu-12-04-lts--3

您只需将域根目录指向 public_html/newproject/public

那么当你去那个域时,laravel 会被加载

那么如果你有 composer 并且文件夹中有 composer.json 你可以做cd /var/www/public_html/newproject/ 然后composer install

cd /var/www/public_html/ 创建项目

composer create-project --prefer-dist laravel/laravel newproject

【讨论】:

  • 如果我通过创建一个将我的域重定向到该 FTP 帐户文件夹的 FTP 帐户来更改您所说的第一步,它是否也能正常工作?还是我需要手动操作?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-03-22
  • 2020-07-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多