【发布时间】:2013-11-18 20:51:01
【问题描述】:
我在新的 linux CentOS6 服务器上安装了一个用 joomla 制作的网站。 我已经安装并配置了 Apache 安装和配置 PHP 安装和配置 MySQL 安装 PhpMyAdmin 已安装和配置的 FTP 设置防火墙规则
一切正常,除了单篇文章页面:
- 该网站可从外部访问该用户属于该组
- www-data 并且对所有我能读到的文件夹都有读写权限
- 将媒体上传到网站,一旦上传就具有正确的权限
- FTP 运行良好
- httpd.conf 有权限 AllowOverride All 到站点所在目录(/var/www/sites/clientname/sitename.it)
- 当我启动 httpd 时,我没有收到任何错误或警告。
如果我尝试访问以下 URL,我会得到 404: http://ldgsocial.brainsen.com/index.php/test 它是一个配置为“单篇文章”的页面,指向已发布的文章。 输入真实 URL 甚至无法访问该文章: http://ldgsocial.brainsen.com/index.php?option=com_content&view=article&id=110
- id=110 的记录存在于数据库中,并且在 Joomla Admin 的文章列表中可见。
- joomla的所有文件夹都是可读写的。
- SEF 已激活,我已尝试停用,但以上 URL 始终返回 404
- mod_rewrite 已加载
- 在 FTP 上传到 .htaccess 后,htaccess.txt 被重命名
在 .htaccess 中我有以下指令:
Options +FollowSymLinks
RewriteEngine On
RewriteBase /var/www/sites/clientname/sitename.it
RewriteCond %{QUERY_STRING} base64_encode[^(]*\([^)]*\) [OR]
RewriteCond %{QUERY_STRING} (<|%3C)([^s]*s)+cript.*(>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
RewriteRule .* index.php [F]
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteCond %{REQUEST_URI} !^/index\.php
RewriteCond %{REQUEST_URI} /component/|(/[^.]*|\.(php|html?|feed|pdf|vcf|raw))$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [L]
我也尝试过: RewriteBase /var/www/sites/clientname/sitename.it/public_html 和 RewriteBase / 但无事可做。
只有当我创建一个类别列表类型的新菜单语音时,才能访问这些文章。 从那里可以访问并正确显示所有文章。
我很绝望,因为我不知道下一步该做什么......
这里是安装细节:
database Version 5.1.69
Collation database utf8_general_ci
PHP Version 5.3.3
Web Server Apache/2.2.15 (CentOS)
Joomla! Version Joomla! 2.5.14 Stable [ Ember ] 01-August-2013 14:00 GMT
Joomla! Platform Version Joomla Platform 11.4.0 Stable [ Brian Kernighan ] 03-Jan-2012 00:00 GMT
【问题讨论】:
-
文章发表了,没有被删除?什么是 publish_up 和publish_down 值?它的访问级别是多少?
-
最初发布(绿色)。然后我尝试暂停并重新发布,但它显示:已发布但待处理(黄色图标)。访问级别是公开的。
标签: .htaccess mod-rewrite joomla http-status-code-404 article