2013-10-13 148 views
0

我知道這是一個很多人都有的問題,但即使修復了所有問題,我仍然沒有得到任何結果。Laravel乾淨的url問題

在這一刻,當我去

矮個子... /大衆/用戶

我得到以下

矮子../公共/ index.php文件/用戶在此服務器上找不到。

但是,當我在url欄中添加index.php然後它的作品。 (在不乾淨的版本)

這是我的htaccess文件

<IfModule mod_rewrite.c> 
    Options -MultiViews 
    RewriteEngine On 

    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteRule ^(.*) index.php/$1 [L] 
</IfModule> 

,這是我的httpd.conf文件

<Directory "/Library/WebServer/Documents"> 
# 
# Possible values for the Options directive are "None", "All", 
# or any combination of: 
# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews 
# 
# Note that "MultiViews" must be named *explicitly* --- "Options All" 
# doesn't give it to you. 
# 
# The Options directive is both complicated and important. Please see 
# http://httpd.apache.org/docs/2.2/mod/core.html#options 
# for more information. 
# 
Options Indexes FollowSymLinks MultiViews 

# 
# AllowOverride controls what directives may be placed in .htaccess files. 
# It can be "All", "None", or any combination of the keywords: 
# Options FileInfo AuthConfig Limit 
# 
AllowOverride All 

# 
# Controls who can get stuff from this server. 
# 
Order allow,deny 
Allow from all 

回答

2

試着改變你的RewriteRule^ index.php。此外,如果失敗,請分享您所在域的整個虛擬主機配置,以便我可以看到您的文檔根目錄。

如果您的Laravel安裝不在您的域的根目錄下,那麼您將需要添加一個RewriteBase。例如,如果您將其安裝在公共文檔根目錄中的文件夾中,如//localhost/myfolder/,則您的RewriteBase必須設置爲/myfolder/public/

另外,如果你安裝Laravel你的根目錄上面,並沒有下文(這是不推薦),那麼你的RewriteBase應設置爲/public/

但是,正如我所說的,我無法分辨出所有東西,相對而言,您的主機域。所以,如果上述不起作用,那麼請用完整的虛擬主機配置更新您的問題。

0

我有相同的preoblem,它通過轉移到Xamppp服務器並將'index' => '',放在app/config/app.php內部爲我工作。希望它也能爲你工作。快樂編碼。