上的所有url重寫。這次我嘗試了cakephp,但是我得到了「URL重寫沒有在你的服務器上正確配置1)幫我配置它2)我沒有/不能使用URL重寫」。我可以知道這是apache和.htaccess問題,例如/ etc/apache2/sites-avaliable/default和每個目錄.htaccess。cakephp不工作在Ubuntu
我的開發環境...
- Ubuntu12.04在VMware fusion4
- apache2.2.22
- mysql5.5
- php5.3.10
- cakephp2.1
我的過程如下...
1)/etc/apache2/httpd.conf
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
2)啓用的mod_rewrite
sudo a2enmod rewrite
sudo service apache2 reload
3)編輯/ etc/apache2的/位點-avaliable /缺省(AllOverride無給AllOverride所有)
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order Allow,Deny
Allow from all
</Directory>
prompt: sudo service apache2 reload
4)編輯或檢查每個.htaccess文件 - >餅根目錄
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ app/webroot/ [L]
RewriteRule (.*) app/webroot/$1 [L]
</IfModule>
- >應用程序根目錄
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ webroot/ [L]
RewriteRule (.*) webroot/$1 [L]
</IfModule>
- > webroot的目錄
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,L]
</IfModule>
這個問題就解決了,謝謝你。
define'does not work' – Dunhamzzz
對我來說,這是個伎倆。 sudo a2enmod rewrite && sudo service apache2 reload – mac
我做了除第1步以外的任何事情..謝謝^^「 –