2014-03-25 236 views
1

在使用.htaccess和衝突規則時遇到了一些麻煩。下面 代碼:.htaccess衝突規則

RewriteEngine On 
RewriteCond %{HTTP_HOST} !^$ 
RewriteCond %{HTTP_HOST} !^www\. [NC] 
RewriteCond %{HTTPS}s ^on(s)| 
RewriteRule^http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L] 

Options +FollowSymLinks 
RewriteCond %{SCRIPT_FILENAME} !-f 
RewriteCond %{SCRIPT_FILENAME} !-d 

DirectoryIndex index.php 

RewriteRule ^home/?$ index.php [L] 
RewriteRule ^([a-zA-Z0-9-]+)?$ static-page.php?slug=$1 [L] 

基於靜態-page.php文件做工精細的網頁,但是當我嘗試去「/家」的頁面加載了一會兒,然後給我什麼。 我相信這是因爲第二個規則是覆蓋第一個規則。

任何人都知道如何解決這個問題?

感謝,

回答

1

試一下這個糾正代碼:

DirectoryIndex index.php 
Options +FollowSymLinks -MultiViews 

RewriteEngine On 

RewriteCond %{HTTP_HOST} !^www\. [NC] 
RewriteCond %{HTTPS}s ^on(s)| 
RewriteRule^http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L] 

RewriteCond %{SCRIPT_FILENAME} -f [OR] 
RewriteCond %{SCRIPT_FILENAME} -d 
RewriteRule^- [L] 

RewriteRule ^home/?$ index.php [L] 

RewriteRule ^([a-zA-Z0-9-]+)?$ static-page.php?slug=$1 [L,QSA] 
+0

完美!感謝您的幫助:) –

+0

不客氣,很高興它解決了。 – anubhava