2013-03-11 89 views
1

我有joomla mod_rewrite的問題。Joomla mod_rewrite與子目錄

我的主機信息: 託管 - 共享 - 豪華 - Linux的 的Joomla: 2.5

root directories: 
domain1com (www.domain1.com) 
domain2com (www.domain2.com) 
domain3com (www.domain3.com) 

例如,讓我們domain1com。

/domain1com/configuration.php 

public $live_site = 'http://www.domain1.com'; 
public $sef = '1'; //Search Engine Friendly URLs ON 
public $sef_rewrite = '1'; //Use URL rewriting ON 

**/domain1com/.htaccess** 

Options +FollowSymLinks 
RewriteBase /domain1com/ 
RewriteEngine On 

RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR] 
RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR] 
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR] 
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR] 
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2}) 
RewriteRule ^(.*)$ index.php [F,L] 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_URI} !^/index.php 
RewriteCond %{REQUEST_URI} (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$ [NC] 
RewriteRule (.*) index.php 
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L] 

我有錯誤,當我嘗試加載:

www.domain1.com/example 

內部服務器錯誤 服務器遇到一個內部錯誤或配置錯誤,無法完成您的請求。 請與服務器管理員聯繫,告知他們發生錯誤的時間以及可能導致錯誤的任何事情。 有關此錯誤的更多信息可能在服務器錯誤日誌中可用。

www.domain1.com/index.php/example 做工精細...

有什麼建議?

+1

是的,正如消息所示:'有關此錯誤的更多信息可能在服務器錯誤日誌中可用,那麼日誌會說什麼?你從哪裏得到這個規則集?爲什麼這個'RewriteBase/domain1com /'?很難理解,試着用'RewriteBase /'。 – 2013-03-11 17:02:07

回答

1

重寫基地是相對於域名而不是文件結構。即使系統中有多個文件夾,但從域角度來看,它是根。你應該有RewriteBase /

如果您訪問的網站是www.domain1.com/domain1com/example那麼您將使用RewriteBase /domain1com/