我试图让我的用户之一安装在Web根目录的子文件夹中的Laravel 4应用程序。我知道有整个框架可通过网络访问的主要安全问题。我计划在理解如何实现这一目标之后分别解决这些问题。如何在Apache用户目录的子文件夹中使用Laravel应用程序
我已经尝试了Apache别名和重写规则的所有组合,我可以想到,但似乎没有任何工作。这里是我的目录结构:
/home/username/public_html
.htaccess
my_laravel_app/
app/
bootstrap/
public/
.htaccess
index.php
robots.txt
...etc (standard Laravel 4 public folder contents)
vendor/
...etc (standard Laravel 4 files and folders)
第一.htaccess
文件中,一个用户public_html
目录下直接上市,包含以下内容:
AuthType Basic
AuthName Private
Authuserfile /path/to/.htpasswd
Require valid-user
第二.htaccess
是一个标准的Laravel 4 .htaccess
文件。它包含以下内容:
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
# Redirect Trailing Slashes...
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule^index.php [L]
</IfModule>
我想这my_laravel_app/public
目录基本上是当作一个根目录,从而使Laravel应用程序的运行方式相同它将如果一个正常的Laravel直接安装在域。
我相信我只需要编辑第一个.htaccess文件来包含重写规则,发送任何请求到/my_laravel_app
到my_laravel_app/public
,但我似乎无法得到这个工作。谁能帮忙?
如果我没有弄错,最后的重写应该是'/ my_laravel_app/public/index.php'。哦,你也可以修改重写条件。我已经在另一台服务器上完成了,让我看看它 – MiltoxBeyond
可能重复的_ [如何安装Laravel 4到Web主机子文件夹没有公开暴露/应用程序/文件夹?](http://stackoverflow.com/questions/16683046/如何安装laravel-4-a-web-host-subfolder-without-public-exposing-app)_并且,你可能会发现这个答案很有用:http://stackoverflow.com/a/27350400/ 1947276 –