我在我的CakePHP 1.3
上使用LAMP Environment
作为我的一个项目,突然之间我的网站路径问题让我感到震惊:
它是这样的:
http://localhost/project/app/webroot/index.php/mydocuments/
到目前为止它正好像:
http://localhost/project/mydocuments/
但我真的不知道,改变了什么设置导致这个路径问题。
我有3个默认的.htaccess文件,其中CakePHP提供的文件夹结构如下,一个htaccess文件位于根文件夹(app文件夹外),一个htaccess文件进入app文件夹,另外一个进入app / webroot文件夹就像你一样这里描述的,但它的路径仍然是问题..
答案 0 :(得分:3)
我假设您使用Apache,而您的Apache docroot指向您的app / webroot文件夹。
您需要在webroot目录中使用.htaccess文件才能在Apache上运行。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</IfModule>
如果您的Apache docroot是您的应用程序根目录(不推荐),您需要在您的应用程序根目录中使用另一个.htaccess文件:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ webroot/ [L]
RewriteRule (.*) webroot/$1 [L]
</IfModule>
希望这有帮助!
答案 1 :(得分:1)
我认为wrdevos在说什么。最重要的是,还要确保在documentroot的Directory指令下(在Apache配置中)选项 AllowOverride 设置为All,如下所示:
<Directory "/var/www/html">
AllowOverride All
# Other options should follow...
</Directory>
在大多数系统上,它默认为AllowOverride None,它不允许运行.htaccess文件。