2014-10-28 156 views
0

我的Ubuntu桌面上使用LAMP与Joomla 3.3.4我目前使用的本地IP(192.168.XX)访问该网站,因为我没有域名然而,尽管Apache2 URL使用Joomla重写 - 权限问题? (500内部错误)

我仍在开发网站。 我一直在努力解决这个问题好几个月,去过那些修补程序似乎适用于其他人但不适合我的论坛。

我想摆脱'index.php'显示在URL看起来真的很愚蠢。 每个不是主页的页面都会显示为'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> 

,它已经启用,因此说PHP和Joomla命令“a2enmod rewrite”的输出。

我的/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> 

当我启用 '使用URL重写' 中的Joomla这使得除了

的阿帕奇error.log被垃圾邮件与网页(domain.com)所有404页以下:

  • 我修好的拼写错误仍然没有解决任何问题

  • '/var/www/html/.htaccess:选项不允许在这里'(我不会理解)

  • '由于可能的配置错误,请求超过了10个内部重定向的限制。如果需要,使用'LimitInternalRecursion'来增加限制。使用'LogLevel调试'获得回溯'

我不知道这里发生了什么,有什么想法吗?

编辑:

  • 在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文件都会重复此操作。

难道这是一个权限问题与Ubuntu的Apache2和? - 我之前有过软件的权限问题,甚至是joomla,在设置目录权限之前,它无法修改文件。 - 通常你的主机正确设置权限,显然你不能做任何事情。虽然我自己主持。

编辑2:

Ubuntu的版本:14.04

Apache2的配置文件:http://pastebin.com/raw,php?i=6H6rP2aY

+0

请在此处阅读Apache部分:http://docs.joomla.org/Enabling_Search_Engine_Friendly_%28SEF%29_URLs#Apache – Lodder 2014-10-28 21:20:22

+0

我在一个月前曾试过。它没有工作,我遇到了与上面相同的问题,比如我没有“目录部分”它似乎也过时了,'使用Apache mod_rewrite选项'在Joomla中不再存在。它也没有与更新的'重写URL选项' – Myst 2014-10-29 15:26:09

回答

0

我找到了解决我自己的问题。

我用这个指南:http://docs.joomla.org/How_to_check_if_mod_rewrite_is_enabled_on_your_server

...找出是否mod_rewrite是运作;不是。这意味着问题不在于.htaccess或你的joomla设置,而是在于apache。

如果apache配置不正确,.htaccess将被忽略。

在我的配置中,AllowOverride被设置为目标/var/www/而不是/var/www/html/。更新,解决了我的问题。

我希望这可以帮助其他人,如果你发现你的apache设置通过了我提到的指南,那么你的问题在于你的网站;您的.htaccess或joomla配置。