【发布时间】:2012-02-28 01:18:13
【问题描述】:
我在让 zend 框架与我的服务器上的子域很好地配合时遇到问题。我在 ubuntu 11.10 上运行了一个 LAMP 堆栈,我还使用了一个动态 dns 服务,我在其中定义了我的区域记录。所以基本上我的 dns 设置如下:
DNS: 在一家公司注册并将我的域名指向此处的动态 DNS 名称服务器。
使用动态 DNS 主机,我有 3 条已定义的 A 类型区域记录:
mydomain.com 000.00.0.0
www.mydomain.com 000.00.0.0
*.mydomain.com 000.00.0.0 <-- wildcard to catch all subdomains
Apache 设置:
在/etc/apache2/sites-available :: /sites-enabled
我有mydomain 的默认设置和mysubdomain.mydomain.com 的另一个虚拟主机
/var/www :
我有 mydomain.com/public /var/www/public 文件夹作为其文档根目录
/var/www/mysubdomain:
我有 mysubdomain.mydomain.com 使用 /var/www/mysubdomain/public 文件夹作为其根目录
我认为所有这些设置都正确,因为我正确地向www.mydomain.com 提供任何请求,并且我也正确地向www.mysubdomain.mydomain.com 提供任何请求。
但是当我发出www.mysubdomain.mydomain.com/:controller 或www.mysubdomain.mydomain.com/:controller/:action 之类的请求时,我收到来自服务器的 404 Not Found 并显示以下消息:
The requested URL /controller/action was not found on this server.
我认为这是我的 .htaccess 的问题,它在
中以以下方式设置我的 .htaccess:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule .* index.php
问题是,当我当前尝试访问的应用程序被设置并作为普通域(如www.mysubdomain.com)访问时,一切正常。
【问题讨论】:
标签: zend-framework .htaccess apache2 subdomain vhosts