首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Laravel -将/public设置为LAMP堆栈上的根

Laravel是一种流行的PHP开发框架,它提供了一种优雅且简洁的方式来构建Web应用程序。在LAMP堆栈上使用Laravel时,可以将/public目录设置为根目录,以实现更好的安全性和项目结构。

将/public设置为LAMP堆栈上的根目录有以下几个优势:

  1. 安全性:将/public目录设置为根目录可以限制对项目中敏感文件的直接访问。只有位于/public目录下的文件和目录可以通过URL直接访问,其他敏感文件将无法被公开访问,提高了应用程序的安全性。
  2. 项目结构清晰:将/public目录设置为根目录可以使项目结构更加清晰。公共资源(如CSS、JavaScript和图片等)可以放置在/public目录下,而应用程序的核心代码和配置文件可以放置在其他目录中,使项目结构更加有序和易于维护。
  3. URL美化:通过将/public目录设置为根目录,可以实现URL的美化。例如,可以通过访问http://example.com/css/style.css来获取样式表,而不是http://example.com/public/css/style.css。这样可以提升用户体验和SEO效果。

在Laravel中,可以通过修改服务器配置文件来将/public目录设置为根目录。具体的步骤可能因使用的服务器软件而有所不同。以下是一些常见的LAMP堆栈中的服务器软件和相关配置文件:

  • Apache:修改Apache的虚拟主机配置文件(通常是/etc/apache2/sites-available/目录下的文件),将DocumentRoot指令设置为/public目录的路径,并重新启动Apache服务。
  • Nginx:修改Nginx的服务器块配置文件(通常是/etc/nginx/sites-available/目录下的文件),将root指令设置为/public目录的路径,并重新加载Nginx配置。
  • Lighttpd:修改Lighttpd的虚拟主机配置文件(通常是/etc/lighttpd/conf-available/目录下的文件),将server.document-root设置为/public目录的路径,并重新启动Lighttpd服务。

总之,将/public目录设置为LAMP堆栈上的根目录可以提高应用程序的安全性、项目结构的清晰性和URL的美化效果。在使用Laravel开发时,这是一个值得考虑的最佳实践。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

如何在Debian 8上安装Linux,Apache,MySQL,PHP(LAMP)堆栈

这个软件堆栈安装在一起,使您的服务器可以托管动态网站和Web应用程序。 在本教程中,我们将引导您在Debian 8(Jessie)DigitalOcean Droplet上安装此软件。...这可能需要一段时间,具体取决于您安装的操作系统的当前版本,软件包和网络条件。在新的腾讯CVM上,它需要几秒钟。 但是,一旦完成,腾讯CVM将完全打补丁,更新并准备好进行LAMP安装。...请注意,安装例程将要求您为根 MySQL用户输入新密码: 这是一个专门用于MySQL管理功能的独立帐户。用户名是root,密码是您在此处设置的密码。务必使用各种字母和数字组合设置一个好的密码。...[Y/n] n 由于我们已经在安装时设置了根MySQL密码,因此您可以在此处说“不”。然后该脚本将询问: Remove anonymous users?...结论 您现在已经在腾讯CVM上安装了基本的LAMP堆栈。 现在是时候定制您的服务器了。这包括您可能需要在腾讯CVM上安装的任何自定义程序,以及基本的安全措施,以防止不受欢迎的访问者离开!

2.2K30
  • Laravel Ignition 功能全解析

    下面的截图是 Whoops,这是 Laravel 5 中的标准。它比默认的 Symfony 好得多,可以显示堆栈跟踪和一些关于请求的信息。...您可以在 ignition配置文件中将其配置为您最喜欢的编辑器。 注意到右上角的那个小 “望远镜” 链接了吗?我们只会在您安装了 Laravel Telescope(第一方调试助手) 的情况下显示。...对于不需要任何绑定的 “简单” 路由参数也是如此。这是一个很好的方法,可以很容易地看到 Laravel 为这个特定的路由接收了什么信息。 在路由参数之后,我们还将向您显示在此请求中使用的中间件列表。...例如,您可以创建一个自定义 “堆栈溢出” 解决方案提供程序,它将尝试为给定的异常找到匹配的堆栈溢出结果,并将它们作为解决方案返回。 我们也在 Ignition 自身上使用解决方案提供者。...Ignitions 功能,为您的异常提供解决方案,我们迫不及待地想看看社区将提供什么!

    3.1K40

    Ubuntu16.04使用composer安装laravel框架

    此教程采用Ubuntu16.04版本纯镜像搭建LAMP环境之后再次安装composer,最后在利用composer安装Laravel框架。...重启Apache2服务器 sudo service apache2 stop # 关闭Apache2服务器 安装PHP 请先确认是PHP版本为最新,或是确认PHP版本跟Laravel的版本是相容的...,如果已经有安装PHP了,但版本对不上请先移除PHP : #移除套件名称开头为PHP的套件 sudo apt-get purge `dpkg -l | grep php| awk '{print $2}...安装Mysql sudo apt install mysql-server mysql-client -y 安装过程会教你输入的MySQL的根密码 验证Musql是否安装成功: #执行mysql操作命令...安装Laravel框架 先切换composer为中国的源: composer config -g repo.packagist composer https://packagist.laravel-china.org

    1.4K10

    使用Salt States在Minion上配置LAMP堆栈

    本教程将配置 Minion 的 LAMP 堆栈,并进一步使用 Salt States。本教程是为 Debian 8 编写的,但可以很容易地针对其他 Linux 发行版进行调整。...在开始本指南之前,您将需要一个有效的 Salt master和minion 配置。如果您需要设置该先决条件,请参阅我们的 Salt 安装指南以开始使用。...创建 LAMP 配置状态 以下步骤为 2GB Linode 配置所有 Salt Minions,可以根据需要随意调整。...要调整单个 Minion 上的配置,请尝试使用 Salt Execution Modules。注意,有很多种方法可以使用 Salt。...您现在应该根据需要在多个 Minion 中配置一个 LAMP 堆栈。可选地,使用 grain 进行进一步定制并将特定变量应用于每个主机。

    81630

    如何在 Ubuntu 上安装和保护 phpMyAdmin

    Ubuntu 服务器上安装的 LAMP(Linux、Apache、MySQL 和 PHP)堆栈。如果这还没有完成,您可以按照本指南在Ubuntu 上安装 LAMP 堆栈。...除了这个包,官方文档还建议您在服务器上安装一些 PHP 扩展,以启用某些功能并提高性能。 如果您遵循了先决条件LAMP 堆栈教程,则其中几个模块将与php包一起安装。...GD 图形库的支持 php-json:为 PHP 提供对 JSON 序列化的支持 php-curl:允许 PHP 使用不同协议与不同类型的服务器交互 运行以下命令将这些软件包安装到您的系统上。...应用程序密码 开源技术小栈注意:假设您按照先决条件 LAMP 堆栈教程的步骤 2安装了 MySQL,您可能已决定启用 Validate Password 插件。...为 MySQL 根帐户配置密码访问 在运行 MySQL 5.7(及更高版本)的 Ubuntu 系统中,根MySQL 用户默认设置为使用auth_socket插件进行身份验证,而不是使用密码进行身份验证

    7410

    如何在Ubuntu 16.04上将Redis服务器设置为PHP的会话处理程序

    第三步:为Redis服务器设置密码 要为Redis安装添加额外的安全层,建议您设置用于访问服务器数据的密码。...第五步:将Redis设置为Web服务器上的默认会话处理程序 现在我们需要在Web服务器上编辑php.ini文件以更改PHP的默认会话处理程序。此文件的位置取决于您当前的堆栈。...对于从默认存储库安装的Ubuntu 16.04上的LAMP堆栈,通常在/etc/php/7.0/apache2/php.ini里。...如果您在其默认配置中使用LAMP堆栈,则您需要的命令是: sudo nano /etc/php/7.0/apache2/php.ini 如果您在其默认配置中使用LEMP堆栈,则您需要的命令是:...将浏览器指向Web服务器的公共IP地址,然后访问脚本/test.php: http://web_server_public_IP/test.php 它应该增加每次重新加载页面时看到的数字。

    1.5K41

    如何在Ubuntu 14.04上使用Bacula备份LAMP服务器

    由于用户错误或任何计算机系统容易出现的终端硬件故障导致数据丢失,您需要将备份设置为安全网。...本教程将向您展示如何通过使用运行Bacula的单独备份服务器,在单个Ubuntu 14.04服务器上运行LAMP堆栈来创建正确的PHP应用程序备份。...准备 本教程假设您正在运行一个PHP应用程序,例如WordPress,它运行在单个Ubuntu 14.04服务器上的LAMP(Linux,Apache,MySQL / MariaDB和PHP)堆栈上,并启用了专用网络...可以按照初始设置的软件安装步骤替换服务器上的其余文件。在服务器发生故障的情况下,我们可以通过遵循准备中的教程,然后恢复备份并重新启动相应的服务来创建替换LAMP服务器。...接下里,让我们设置数据库的热备份。 创建数据库的热备份 为确保我们为活动数据库生成一致(即可用)备份,必须特别小心。

    1.6K30

    Laravel5.3之bootstrap源码解析

    Laravel在入口index.php时先加载Composer加载器:Laravel5.2之Composer自动加载,然后进行Application的实例化:Laravel5.3之IoC Container...异常处理 异常处理是十分重要的,Laravel中异常处理类\App\Exception\Handler中有一个方法report(),该方法可以用来向第三方服务(如Sentry)发送程序异常堆栈(以后在一起聊聊这个...Sentry,效率神器),如Production Code线上环境报出个异常,可以很清楚整个堆栈,出错在哪一行: OK,看下异常设置的启动源代码,HandleExceptions::bootstrap...注册Facades 在路由文件中经常会出现Route::get()这样的写法,但实际上并没有Route类,Route只是\Illuminate\Support\Facades\Route::class外观类的别名...,堆栈首的位置 spl_autoload_register([$this, 'load'], true, true); } 而loader()函数的源码: public

    7K51

    Laravel学习笔记之bootstrap源码解析

    Laravel在入口index.php时先加载Composer加载器:Laravel学习笔记之Composer自动加载,然后进行Application的实例化:Laravel学习笔记之IoC Container...异常处理 异常处理是十分重要的,Laravel中异常处理类\App\Exception\Handler中有一个方法report(),该方法可以用来向第三方服务(如Sentry)发送程序异常堆栈(以后在一起聊聊这个...Sentry,效率神器),如Production Code线上环境报出个异常,可以很清楚整个堆栈,出错在哪一行: OK,看下异常设置的启动源代码,HandleExceptions::bootstrap...注册Facades 在路由文件中经常会出现Route::get()这样的写法,但实际上并没有Route类,Route只是\Illuminate\Support\Facades\Route::class外观类的别名...,堆栈首的位置 spl_autoload_register([$this, 'load'], true, true); } 而loader()函数的源码: public

    3.9K00

    Laravel踩坑日记之基本配置及Demo

    目录及其功能解释 app 应用的核心代码 bootstrap 框架自动加载文件 config 配置文件 database 数据库迁移 public 网站主入口和前端资源 reaources...DB_PASSWORD=**** 设置路由 配置文件位置:网站项目根目录\routes\web.php Route::get('/user', "IndexController@Index"); 如果遇到首页可以显示...,添加其他的路由显示出为404,则需要看两个地方: 网站本身是不是可以访问状态,也就是是否有775授权 Apache24网站是否授权网站的可读性,将 ‘AllowOverride None‘设置为 ’...; //dd($data); return view('user')->with("data",$data); } } 输入:IP地址或Loaclhost/网站根地址.../public/index查看 例如:localhost/laravel/public/index 视图View位置: 网站根地址 /reaources/views/user.blade.php <table

    41320

    Laravel 5.0 之 Middleware (Filter-Style)

    你可能还留意到在原本应该是路由过滤器的地方,变成了对 Middleware 的引用。 实际上给 Laravel 应用添加自定义的 Middleware 在以前的版本中就有了。...这就是 middleware 实现修饰模式的工作方式:它捕获请求,做一些处理,然后把处理后的请求对象返回给下一个堆栈层。...你可能注意到了,新的 Kernel 类有两个属性: $middleware 和 $routeMiddleware. 这两个属性都是 middleware 为元素的数组。...在特定的路由上执行 middleware OK, 接下来把我们的自定义 middleware 移到可选堆栈,要给它指定一个 key: protected $routeMiddleware = [...但如果你采用基于 middleware 的架构来组织你的请求/响应堆栈,这是在依赖关系分离方向上的一个进步。

    2.1K40

    TP5报错总结

    在Thinkphp、codeigniter、Laravel等框架下,网站目录一般是在public下,但是public下的程序要跨目录调用public上级目录下的文件,因为LNMP默认是不允许跨目录访问的...LNMPA或LAMP 模式1.2版本以上的防跨目录的设置使用的对应apache虚拟主机配置文件(lnmp管理工具添加的话文件是 /usr/local/apache/conf/vhost/域名.conf...3.pathinfo设置 LNMP上各个版本pathinfo各个版本的设置基本一样: lnmp v1.1上,修改对应虚拟主机的配置文件(/usr/local/nginx/conf/vhost/域名....上一切正常,在linux环境报错 1.大小写问题 2.runtime和public权限问题  chmod -R 775 目录名 将两个目录权限进行修改,775不行就试试777看下 3.public...下的index文件中指向的应用路径有问题 模板文件不存在 window上没有,linux上出现,大小写问题 找到对应的文件更改名称即可

    8610

    Laravel + Vue 3(Vite、TypeScript)SPA 设置

    在本教程中,我将向大家展示如何使用 Laravel + Vue 3 使用 typescript 和 Vite 设置你自己的单页应用程序。 这是在 Laravel 项目中添加 PWA 的手动方法。...第 1 步:让我们创建我们的 Laravel 项目 composer create-project laravel/laravel laravel-vue-manual 第 2 步:设置前端 在我们的...yarn create vite 将项目名称设置为:FrontEndApp 选择:Vue 选择:TypeScript 然后转到我们的FrontEndApp目录并运行yarn或yarn install...第 3 步:设置 Laravel 路由 让我们设置我们的 laravel 路由,以便我们可以访问我们刚刚创建的文件。 让我们编辑这个文件 routes\web.php 设置脚本 我们将在我们的根项目目录中添加一个开发包,并同时调用它。我们用它来一次运行 2 个或更多命令。

    2.7K31

    如何在Debian 9上安装Linux,Apache,MariaDB,PHP(LAMP)堆栈

    介绍 “LAMP”堆栈是一组开源软件,通常安装在一起以使服务器能够托管动态网站和Web应用程序。这个术语实际上是一个缩写,代表L inux操作系统,带有A pache Web服务器。...在Debian系统上的新安装中,根 MariaDB用户设置为默认使用unix_socket插件进行身份验证,而不是使用密码进行身份验证。...如果您需要设置基于密码的访问权限,软件包维护人员建议您创建一个单独的管理帐户,而不是修改root帐户。 为此,我们将创建一个与root帐户具有相同功能的新帐户admin,但配置为密码身份验证。...: mariadb -u admin -p 此时,您的数据库系统已设置完毕,您可以继续安装PHP,即LAMP堆栈的最终组件。...结论 现在您已经安装了LAMP堆栈,您可以选择下一步做什么。基本上,您已经安装了一个平台,允许您在服务器上安装大多数类型的网站和Web软件。

    2.1K31

    让 VAGRANT 启动并运行起来

    这篇文章将介绍Vagrant中一些相当酷的事情,比如: 在你的机器中使用PHP5.4版本的LAMP。 如何在你的虚拟机中便捷访问数据库。...在它之前,开发人员会纠结在无尽的配置中,用电脑扔墙而筋疲力尽。 Vagrant将会替你管理好环境设置的种种,让你将精力用在业务代码的开发....开始使用LAMP 下面将分步介绍在Mac上使用Vagrant 。...本地开发,方便的数据库连接, 使用 Chef 或 Puppet 配置管理虚拟机配置, 以及统一管理开发环境的相关配置.它的致命优点就是,可以直接将环境配置直接克隆到各种环境上,不论是开发环境或是生产环境...如果在使用时还有什么问题,可以直接使用下面的 Vagrant LAMP : 在 GitHub上搜索 OpenSource Vagrant Stacks Best Vagrant Laravel

    1.1K20

    在Ubuntu 16.04上安装MediaWiki

    介绍 MediaWiki是一个流行的免费wiki软件包。它与维基百科使用的软件相同,是完全动态的,可以在LAMP堆栈上运行,利用PHP语言和MySQL数据库后端。...通过简单的安装和配置,当您需要用到一个熟悉的、功能齐全的动态wiki引擎时,MediaWiki是一个很好的选择。 在本教程开始之前您应该在Ubuntu上有一个可以运行的LAMP堆栈。...解压包: tar -xvf mediawiki-1.29.0.tar.gz 将未压缩的mediawiki-1.29.0目录移动到站点的public_html/文件夹中,在此过程中将目录重命名为mediawiki...在这种情况下,维基将位于example.com/mediawiki/。您可以将Wiki复制到public_html/层次结构中任何可公开访问的位置。...如果您计划拥有大量用户或内容,请考虑将第二个腾讯云CVM服务器设置为专用数据库服务器。

    3.1K50
    领券