【问题标题】:I'm confused with Apache vhost我对 Apache vhost 感到困惑
【发布时间】:2011-01-14 17:41:52
【问题描述】:

我正在使用 Zend Framework 构建一个 Web 应用程序,我需要将我的应用程序指向应用程序的“公共”文件夹:

所以基本上当我打电话给http://localhost/myapp 它应该显示http://localhost/myapp/public/

我在 /etc/apache2/sites-available/ 中创建了一个名为 myapp 的虚拟主机文件:

    <VirtualHost *:80>
DocumentRoot /var/www/myapp/public/
 <Directory />
  Options FollowSymLinks
  AllowOverride None
 </Directory>
 <Directory /var/www/myapp/>
  Options Indexes FollowSymLinks MultiViews
  AllowOverride None
  Order allow,deny
  allow from all
 </Directory>

</VirtualHost>

但它不起作用。当我调用http://localhost/myapp时,它会显示应用程序的目录结构,当我点击“公共”文件夹时,它会默认显示我想要显示的内容... 我以前从未配置过虚拟主机,这就是我在有关它的教程中得到的。

【问题讨论】:

    标签: apache localhost vhosts


    【解决方案1】:

    在您的第一个列表中,您的目录标签具有不同的值,完全没有“公开”。在 DocRoot 值中的“public”之后还有一个斜杠,但在您第二次尝试时被删除。不确定这会有所不同,但我相信建议您不要包含斜杠。

    另外,只是想知道...您是在本地机器上运行它吗?如果我在我的 apache 服务器之前开始运行 80 端口,我会遇到 Skype 想要使用端口的问题。如果已使用 80,Skype 将使用不同的端口。如果不是 Skype,则可能有另一个应用程序正在使用端口 80 并进行干扰。这可能就是您在另一个端口上取得成功的原因。

    【讨论】:

      【解决方案2】:

      好吧,我以某种方式找到了一种方法...我认为这不是正确/最好的方法,但是...

      在 httpd.conf 中(在 apache2 文件夹中):

      Listen 10089
      
      <VirtualHost *:10089>
      
          DocumentRoot "/var/www/myapp/public"
      
          <Directory "/var/www/myapp/public">
      
              Order allow,deny
      
              Allow from all
      
          AllowOverride all
      
      </Directory>
      
      </VirtualHost>
      

      我的应用现在可以通过 localhost:10089 访问 在 apache 中启用 rewrite mod 后,我添加了必要的 .htaccess,它位于我的应用程序的根目录,将所有内容重定向到 index.php(Zend 框架支持友好的 url 导航并以这种方式工作):

      RewriteEngine on
      
      RewriteRule .* index.php
      

      我的公用文件夹中还有第二个 .htaccess 文件,以允许人们访问 .jpg、.ico 等文件,而不会被重定向到所有内容的索引:

      RewriteEngine On
      
      RewriteCond %{REQUEST_FILENAME} -s [OR]
      
      RewriteCond %{REQUEST_FILENAME} -l [OR]
      
      RewriteCond %{REQUEST_FILENAME} -d
      
      RewriteRule ^.*$ - [NC,L]
      
      RewriteRule ^.*$ /index.php [NC,L]
      

      希望这会有所帮助!

      【讨论】:

        猜你喜欢
        • 2016-11-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-07-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多