我正在尝试在ubuntu服务器上部署laravel脚本,但遇到了两个问题。
1-如何从url中删除public (从myip/laravel/public/myURL到myip/laravel/myURl)
2-如何保护其他文件(如果发出get请求myip/laravel/.env,则会显示.env文件的所有内容)
谢谢
发布于 2017-06-17 20:24:18
我建议您查看web server configuration上的文档页面。
它为您提供了如何在服务器上设置Laravel的建议。
基本步骤
1)将您的laravel应用程序放在特定的文件夹中
2)将app服务器文档根目录指向您的_app/public
3)确保文件夹上的RWX权限正确。
特别是第2点将确保您不能调用.env文件...
发布于 2017-06-17 21:38:18
对于第一个问题:
如果您在ubuntu服务器上使用apache2,首先,您必须将laravel文件放在/var/www/html,以便能够更改文档根目录。然后打开/etc/apache2/sites enabled/000-default.conf(或默认站点配置所在的任何文件)查找
DocumentRoot /var/www/html/并将其替换为DocumentRoot /var/www/html/public。这会将其指向var/www/html的公共文件夹,该文件夹应该是您的项目所在的位置。
对于第二个:在/etc/apache2/sites-enabled/000-default.conf文件中,将<Directory>标记下的Options Indexes更改为Options -Indexes。最后运行sudo a2dismod autoindex。
这应该可以解决apache服务器的问题。不要忘记使用sudo service apache2 restart重新启动apache2服务器。
发布于 2017-06-17 19:45:03
您必须将laravel公共文件夹文件放在www文件夹中,其他文件放在www文件夹之前。
https://stackoverflow.com/questions/44604163
复制相似问题