我有一個非常簡單的目標:重寫我的PHP應用程序的URL,使得localhost/slim_demo/archive
被系統解釋爲localhost/slim_demo/index.php/archive
,但用戶看到前者。 編輯:該系統表現得好像沒有重寫正在發生。後一版本的URL返回數據,但前者會拋出未找到錯誤。簡單的URL重寫失敗
我用下面的.htaccess
文件,但它不會發生(順便說一下,作爲第二行說,在取消它拒絕所有的請求,這表明.htaccess
是活蹦亂跳):
Options +FollowSymLinks -MultiViews -Indexes
#deny from 127.0.0.1 #Uncomment to prove that .htacess is working
RewriteEngine On
RewriteRule ^slim_demo/(.*)$ slim_demo/index.php/$1 [NC,L]
而且下面是從我apache2.conf
相關部分:
<Directory />
Options FollowSymLinks
AllowOverride None
Require all denied
</Directory>
<Directory /usr/share>
AllowOverride None
Require all granted
</Directory>
<Directory /media/common/htdocs>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
我也沒有a2enmod rewrite
和service apache2 restart
。沮喪,我也添加到了我的網站可用,做了重新啓動:
<Directory /media/common/htdocs/>
Options +FollowSymLinks -Indexes
AllowOverride All
</Directory>
不知道還有什麼我需要做的!
哪裏是你的.htaccess在什麼位置? – Zimmi
你的「slim_demo」目錄中是否有htaccess文件? –
@Zimmi @Jon是的,它在'slim_demo'目錄中! – dotslash