2015-06-25 28 views
2

我試圖讓我的用戶之一安裝在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_appmy_laravel_app/public,但我似乎無法得到這個工作。誰能幫忙?

+0

如果我沒有弄錯,最後的重寫應該是'/ my_laravel_app/public/index.php'。哦,你也可以修改重寫條件。我已經在另一臺服務器上完成了,讓我看看它 – MiltoxBeyond

+0

可能重複的_ [如何安裝Laravel 4到Web主機子文件夾沒有公開暴露/應用程序/文件夾?](http://stackoverflow.com/questions/16683046/如何安裝laravel-4-a-web-host-subfolder-without-public-exposing-app)_並且,你可能會發現這個答案很有用:http://stackoverflow.com/a/27350400/ 1947276 –

回答

0

這可能會根據您的設置有所不同,但基本配置爲:

RewriteBase/
RewriteCond %{DOCUMENT_ROOT}/my_laravel_app/public/%{REQUEST_URI} -d [OR] 
RewriteCond %{DOCUMENT_ROOT}/my_laravel_app/public/%{REQUEST_URI} -f 
RewriteRule . public/%{REQUEST_URI} [L] 

RewriteRule . public/index.php [L] 

而且把你的my_laravel_app內作爲一個.htaccess限制條件的複雜性。你有希望得到這個想法。

+0

謝謝。你能否澄清你的意思是「把你的my_laravel_app作爲一個.htaccess來限制條件的複雜性」。你是說你要顯示的代碼應該放在'my_laravel_app'目錄下的'.htaccess'文件中? – flyingL123

+0

這將是理想的my_laravel_app。不是必需的,但如果您不需要,則必須修改條件以在laravel文件夾中檢查任何請求文檔的內容。 – MiltoxBeyond

相關問題