【发布时间】:2014-10-28 21:17:56
【问题描述】:
我在 ubuntu 桌面上使用 LAMP 和 Joomla 3.3.4
我目前正在使用本地 ip (192.168.xx) 访问该网站,因为我还没有域名,而我仍在开发网站。 几个月来,我一直在为这个问题苦苦挣扎,浏览了那些似乎对其他人有用但对我无效的修复程序的论坛。
我正在尝试摆脱 URL 中显示的“index.php”,看起来非常愚蠢。
不是主页的每个页面都会看起来像“domain.com/index.php/page”,我想将其更改为domain.com/page。
我已经尝试了 http://forum.joomla.org/viewtopic.php?t=614279 中列出的所有解决方案 似乎没有一个对我有用,而它们确实为很多其他人工作。 这段代码,评价最高,对我没有任何影响:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
命令 'a2enmod rewrite' 输出它已经启用,比如 php 和 joomla。
我的/sites-enabled/000-default.conf 不包含任何<Directory> 标签,就像在“AllowOverride”解决方案中指定的那样。当我用给定的代码添加这些代码时,我的整个网站都变成了500 internal error。
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
当我在 Joomla 中启用“使用 URL 重写”时,它会使除主页 (domain.com) 之外的所有页面都变为 404
apache error.log 被以下垃圾邮件发送:
我修正的一个错字仍然没有解决任何问题
'
/var/www/html/.htaccess: Options not allowed here'(我不明白)'由于可能的配置错误,请求超出了 10 个内部重定向的限制。如有必要,使用“LimitInternalRecursion”增加限制。使用 'LogLevel debug' 获取回溯'
我不知道这里发生了什么,有什么想法吗?
编辑:
Joomla 的 configuration.php 中的 '
public $live_site =' 值目前没有设置,它应该包含域名。当我尝试设置 'localhost' 时,它使我的整个网站模板出现故障而没有解决问题。 '192.168.x.x' 相同
error.log 包含以下内容:PHP 通知:未定义索引:HTTP_HOST 在 /var/www/html/libraries/joomla/applications/web.php 中的 X 行
几乎每个.php 文件都会重复此操作。
- 我注意到这个关于 apache2 的 Ubuntu 错误报告:http://imgur.com/hKFZhBa
这可能是 Ubuntu 和 Apache2 的权限问题吗? - 我之前遇到过软件权限问题,甚至是 joomla,在我设置目录权限之前,它无法修改文件。 - 通常您的主机正确设置权限,显然您将无法做任何事情。虽然我自己主持。
编辑 2:
Ubuntu 版本:14.04
Apache2 配置文件:http://pastebin.com/raw,php?i=6H6rP2aY
【问题讨论】:
-
在这里阅读 Apache 部分:docs.joomla.org/…
-
大约一个月前我已经尝试过了。它没有用,我遇到了与上面相同的问题,比如我没有“目录部分”。它似乎也已经过时了,Joomla 中不再存在“使用 Apache mod_rewrite 选项”。它也不适用于较新的“重写 URL 选项”
标签: php apache .htaccess mod-rewrite joomla