【问题标题】:Friendly URLs in phalcon framwork is not working in Ubuntu [closed]phalcon 框架中的友好 URL 在 Ubuntu 中不起作用 [关闭]
【发布时间】:2014-07-25 20:11:47
【问题描述】:

我试过这两个代码。但它不工作。它也需要访问公共文件夹。

http://docs.phalconphp.com/en/latest/reference/tutorial.html

#www/tutorial/.htaccess

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteRule  ^$ public/    [L]
    RewriteRule  (.*) public/$1 [L]
</IfModule>

#www/tutorial/public/.htaccess

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

【问题讨论】:

  • 并且 mod_rewrite 处于活动状态?
  • 我不知道该怎么做。
  • 我试过这个“sudo a2enmod rewrite”,它说“模块重写已经启用”。我认为 mod_rewrite 已启用。
  • 我的 localhost 文件夹是 www/html/... 不是 www/...

标签: php apache .htaccess phalcon


【解决方案1】:

如果启用了mod_rewrite,我猜你的服务器没有正确设置AllowOverride 选项...

默认情况下,所有 .htaccess 文件在 apache 中都会被忽略,因为有人可以设法将 .htaccess 文件上传到您的服务器并覆盖您的服务器配置。如果您确定服务器的文件系统受到保护,您可以在服务器的配置中明确说明您的设置可以被目录中的任何.htaccess 文件覆盖。

这是通过AllowOverride 设置完成的。请参阅this question 了解更多相关信息。

【讨论】:

  • 非常感谢,它可以工作......如果你在 ubuntu 上编辑文件 /etc/apache2/apache2.conf (这里我们有 /var/www 的示例)“AllowOverride All ", next -> sudo service apache2 restart 这对我很有帮助。
  • 非常感谢! cvsguimaraes
【解决方案2】:

如果您在 ubuntu 上,请编辑文件 /etc/apache2/apache2.conf(这里我们有 /var/www 的示例)

<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
</Directory>

并将其更改为;

<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
</Directory>

然后

sudo 服务 apache2 重启

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2012-12-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-27
相关资源
最近更新 更多