2016-01-06 82 views
0

我遇到.htaccess RewriteRule問題。所有我想要做的是 改寫這個網址 - www.example.com/public/?q=admin 到 - www.example.com/public/admin.htaccess重寫規則404沒有找到

但現在當我去這個網址WWW .example.com/public/admin它說沒有找到。

,但這個網址是工作ww.example.com/public/?q=admin

這裏是我的.htaccess代碼

Options All -Indexes 

<FilesMatch "(config|.+\.html)\.php"> 
    deny from all 
</FilesMatch> 

<IfModule mod_rewrite.c> 
    RewriteEngine on 

    RewriteCond %{REQUEST_URI} !\.(bmp|cgi|css|flv|gif|ico|jpe?g|js|png|swf|xml)$ 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 

    RewriteRule (.*) ?q=$1&%1 [L,QSA] 
</IfModule> 

有誰知道幫助?

UPDATE 這個腳本一個子像這樣 http://subdomain.maindomain.com/comingsoon/ 即將推出一個子文件夾裏面 安裝是根文件夾 http://subdomain.maindomain.com/comingsoon/public就是放在.htaccess文件的另一個文件夾。

我使用的是迷你PHP framwork稱爲金絲燕

https://github.com/AliasIO/Swiftlet

回答

0

你可以在你的.htaccess使用此規則爲您所需的網址。

RewriteRule ^public/(.*)$ public?q=$1 [L,QSA] 

更新1:

RewriteEngine on 
RewriteCond %{HTTP_HOST} ^subdomain.domain.com 
RewriteRule ^public/(.*)$ http://subdomain.domain.com/comingsoon/public?q=$1 [L,NC,QSA] 
+0

沒有運氣..它說 在此服務器上找不到請求的URL/comesoon/public/admin。 此外,嘗試使用ErrorDocument處理請求時遇到404未找到錯誤。 –

+0

@MalithMcR:它是什麼?快來了/???另一個文件夾 – devpro

+0

你是Codignitor嗎? @MalithMcR – devpro

0

好了,你的更新後,試試這個:

RewriteBase /comingsoon/public 
RewriteRule ^(.*)$ /?q=$1 [L,QSA] 
+0

沒有運氣..它說 此服務器上未找到所請求的網址/ comingsoon /公/管理員。 此外,嘗試使用ErrorDocument處理請求時遇到404未找到錯誤。 –

+0

這是什麼「comingsoon」? – scandel

+0

一個子域和這樣的子文件夾 http://subdomain.maindomain.com/comingsoon/ 即將推出的根文件夾 http://subdomain.maindomain.com/comingsoon/public內安裝腳本是另一個放置.htaccess文件的文件夾。 我正在使用迷你php framwork,名爲Swiftlet https://github.com/AliasIO/Swiftlet –