gpt4 book ai didi

macos - 使用 VirtualHost 时,CakePHP 仅适用于 Mac 本地

转载 作者:行者123 更新时间:2023-12-02 04:58:27 24 4
gpt4 key购买 nike

我这里有一个 CakePHP 2.x 应用程序:/Users/cameron/Sites/ExampleApplication

里面有标准的结构:

/app
/webroot

etc.

但是当我去:

localhost/~cameron/ExampleApplication

我收到错误:在此服务器上找不到请求的 URL/Users/cameron/Sites/ExampleApplication/app/webroot/。

但是,如果我设置一个 VirtualHost,如下所示:

<Directory "/Users/cameron/Sites">
Header set Access-Control-Allow-Origin "*"
Options Indexes MultiViews FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>

<VirtualHost *:80>
DocumentRoot "/Users/cameron/Sites/ExampleApplication"
ServerName example.com
UseCanonicalName Off
</VirtualHost>

效果很好!

有什么想法为什么它适用于 VirtualHost 但在通过通常的本地主机访问它时却不起作用?

以下是三个 .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>

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

最佳答案

如果使用Mamp,则必须配置htaccess文件并修改文件夹 root/app/webroot 和 app/config 中的 htaccess

<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine On
RewriteBase / "production" or /nameFolder/ "dev"
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [QSA,L]

关于macos - 使用 VirtualHost 时,CakePHP 仅适用于 Mac 本地,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30001923/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com