如何在WampServer中配置CakePHP的.htaccess文件?

如何在WampServer中配置CakePHP的.htaccess文件?,.htaccess,cakephp,mod-rewrite,wamp,wampserver,.htaccess,Cakephp,Mod Rewrite,Wamp,Wampserver,我完全不知道我必须做什么才能在CakePHP中运行我的示例 我使用的是WAMP服务器,它位于“C:/program files/WAMP/”中,我的项目使用另一个分区:“E:/projects/” 有一个学习CakePHP的文件夹:“E:/Projects/CakePHP/”。我已将所有CakePHP提取的内容放在该文件夹中(包括:index.php、.htaccess、readme.txt和文件夹:app、cake、plugins、vendors) 首先,我在Apache中设置了一个别名(te

我完全不知道我必须做什么才能在CakePHP中运行我的示例

我使用的是WAMP服务器,它位于“C:/program files/WAMP/”中,我的项目使用另一个分区:“E:/projects/”

有一个学习CakePHP的文件夹:“E:/Projects/CakePHP/”。我已将所有CakePHP提取的内容放在该文件夹中(包括:index.php、.htaccess、readme.txt和文件夹:app、cake、plugins、vendors)

首先,我在Apache中设置了一个别名(test),该别名指向“E:/Projects/cakephp/”,但它不起作用(消息:Oops!此链接似乎已断开)

经过一些搜索,我发现我必须将别名设置到另一个文件夹:“E:/Projects/cakephp/app/webroot/”,它工作得非常好,并向我展示了cakephp框架的第一页

我在第一页解决了所有问题(使用CakePHP手册)。我试着跟随CakePHP博客教程。。。我制作了一个模型、一个控件和一个查看页面(都与“posts”主题相关),但当我试图查看结果时,我只收到了WAMP服务器的第一个页面(显示地址中存在一些问题)

我使用的地址是:“”(这不起作用) 然后,我尝试将index.php放在url中:“”,它成功了

.htaccess文件当我尝试访问根“”时,我不知道出了什么问题

xx我在StackOverflow中发现了相同的问题。它的所有设置都与我的类似,只是他似乎将别名设置为CakePHP的根,而这对我不起作用

事实上,我找不到如何使用帮助他的解决方案(),因为我觉得我的情况有点不同

以下cakephp文件夹的htaccess文件如下:

cakephp的根

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteBase /test/
    RewriteRule ^$ /app/webroot/ [L]
    RewriteRule (.*) /app/webroot/$1 [L]
</IfModule>  
<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteBase /test/
    RewriteRule    ^$    webroot/    [L]
    RewriteRule    (.*) webroot/$1    [L]
 </IfModule>

重新启动发动机
重写基础/测试/
重写规则^$/app/webroot/[L]
重写规则(.*)/app/webroot/$1[L]
/app

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteBase /test/
    RewriteRule ^$ /app/webroot/ [L]
    RewriteRule (.*) /app/webroot/$1 [L]
</IfModule>  
<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteBase /test/
    RewriteRule    ^$    webroot/    [L]
    RewriteRule    (.*) webroot/$1    [L]
 </IfModule>

重新启动发动机
重写基础/测试/
重写规则^$webroot/[L]
重写规则(.*)webroot/$1[L]
/app/webroot

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /test/
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ /index.php?url=$1 [QSA,L]
</IfModule>

重新启动发动机
重写基础/测试/
重写cond%{REQUEST_FILENAME}-D
重写cond%{REQUEST_FILENAME}-F
重写规则^(.*)$/index.php?url=$1[QSA,L]
我希望有人能帮我,我真的很累

提前感谢您的时间和解决方案

----------------------------------------------------------------

哟哟哟!我找到了答案!我对我所有的htaccess文件做了很多更改!如果您也有此问题,请首先删除所有更改,然后将其用作一个很好的帮助! 希望它也能帮助你!奶酪!很多奶酪!!:D

  • 右键单击屏幕上的WAMP图标 任务栏
  • 然后将鼠标悬停在Apache模块上
  • 向下滚动并确保已勾选“重写”模块

  • 我和你有同样的问题,但我不记得是怎么解决的

    我可以向您保证的不是.htaccess问题,而是Apache的配置错误

    我想我修改的部分就是这个

    <Directory />
        #Options +Indexes
        Options FollowSymLinks
        AllowOverride All
        #Order deny,allow
        #Deny from all
    </Directory>
    
    
    #选项+索引
    选项如下符号链接
    允许超越所有
    #命令拒绝,允许
    #全盘否定
    
    注意我是如何评论一些行的。尽管我无法确认这一点,因为我没有默认的配置文件。

    使用

      RewriteRule ^posts/(.*)  index.php/posts/index
    

    我也有同样的问题,这是一个对我有效的解决方案

    这是我在wamp服务器中的
    cakephp.conf

    Alias /cakephp "d:/wamp/apps/cakephp/app/webroot" 
    
    <Directory "d:/wamp/apps/cakephp/app/webroot">
       Options FollowSymLinks
       AllowOverride all
       Require local
    </Directory>
    
    这是/cakephp/app中的
    .htaccess
    文件(未更改任何内容)

    我刚在这行加了一行

    RewriteBase /cakephp
    
    在此之后,我能够启动url localhost/cakephp/index.php/posts/index


    希望这将帮助您使用WAMP服务器开始使用CakePhp

    谢谢,我在httpd.conf中做了,但结果没有任何变化!我认为这是一个访问问题!我在其他网站上找到了很多建议和解决方案,但我无法解决这个问题!我相信不是这样。尝试安装WordPress并检查URL结构是否像
    /wp/2010/12/post_title
    或更像
    /index.php/wp/2010/12…
    实际上,我的本地主机中有一个WordPress,我的WordPress没有问题。。。greatOk,我刚刚看到你修改了默认的.htaccess文件。再次尝试下载CakePHP并将所有内容解压缩到新文件夹,然后通过本地主机访问该文件夹。告诉我它是如何工作的。你的建议帮助我发现了我的错误!非常感谢我发现了一个非常好的博客,它对我很有帮助,我把它放在了问题的底部。谢谢你的帮助,我把它放在了我的htaccess文件中,但它在结果页面上显示了一条错误消息(控制器错误)。。。我研究了许多不同的解决方案,但它们并没有改变这一行“RewriteRule^(.*)$/index.php?url=$1[QSA,L]”,但大多数都试图改变RewriteBase。。。我尝试了很多事情,但没有任何好结果。
    RewriteBase /cakephp