子页面上的Magento 404

子页面上的Magento 404,magento,ubuntu,configuration,apache2,http-status-code-404,Magento,Ubuntu,Configuration,Apache2,Http Status Code 404,我刚刚在ubuntu上运行apache2的另一台服务器上恢复了我们的Magento网站。主页显示得很好,但如果我尝试转到任何其他页面,我会得到404 权限 DirectoryIndex index.php <IfModule mod_php5.c> php_value memory_limit 10G php_value max_execution_time 1800000 php_flag magic_quotes_gpc off php_flag

我刚刚在ubuntu上运行apache2的另一台服务器上恢复了我们的Magento网站。主页显示得很好,但如果我尝试转到任何其他页面,我会得到404

权限

DirectoryIndex index.php

<IfModule mod_php5.c>
    php_value memory_limit 10G
    php_value max_execution_time 1800000
    php_flag magic_quotes_gpc off
    php_flag session.auto_start off
    php_flag suhosin.session.cryptua off
    php_flag zend.ze1_compatibility_mode Off
</IfModule>

<IfModule mod_security.c>
    SecFilterEngine Off
    SecFilterScanPOST Off
</IfModule>

<IfModule mod_deflate.c>
</IfModule>

<IfModule mod_ssl.c>
    SSLOptions StdEnvVars
</IfModule>

<IfModule mod_rewrite.c>
    Options +FollowSymLinks
    RewriteEngine on

    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
    RewriteCond %{REQUEST_URI} !^/(media|skin|js)/
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-l
    RewriteRule .* index.php [L]
</IfModule>

AddDefaultCharset Off

<IfModule mod_expires.c>
    ExpiresDefault "access plus 1 year"
</IfModule>

Order allow,deny
Allow from all

<Files RELEASE_NOTES.txt>
    order allow,deny
    deny from all
</Files>
  • 所有文件都是660
  • 所有目录都是770所有文件和目录
  • 所有文件和目录都属于www数据组
我尝试过的事情

  • 检查所有网站和商店ID
  • 在域和页面路径之间添加/index.php/
  • 清除临时文件
除了access.log和error.log中的标准404行之外,日志文件中没有显示任何内容

apache2.conf文件

<VirtualHost *:80>
    ServerAdmin serveradmin@mydomain.com
    ServerName mydomain.com

    DocumentRoot "/var/www/default/"
    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>
    <Directory "/var/www/default/">
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
        php_admin_flag engine on
        php_admin_value open_basedir none
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

服务器管理员serveradmin@mydomain.com
ServerName mydomain.com
DocumentRoot“/var/www/default/”
选项如下符号链接
不允许超限
选项索引跟随符号链接多视图
允许超越所有
命令允许,拒绝
通融
php_admin_标志引擎打开
php\u admin\u值open\u basedir无
ErrorLog${APACHE_LOG_DIR}/error.LOG
#可能的值包括:调试、信息、通知、警告、错误、临界值、,
#警惕,埃默格。
日志级别警告
CustomLog${APACHE\u LOG\u DIR}/access.LOG组合
.htaccess

DirectoryIndex index.php

<IfModule mod_php5.c>
    php_value memory_limit 10G
    php_value max_execution_time 1800000
    php_flag magic_quotes_gpc off
    php_flag session.auto_start off
    php_flag suhosin.session.cryptua off
    php_flag zend.ze1_compatibility_mode Off
</IfModule>

<IfModule mod_security.c>
    SecFilterEngine Off
    SecFilterScanPOST Off
</IfModule>

<IfModule mod_deflate.c>
</IfModule>

<IfModule mod_ssl.c>
    SSLOptions StdEnvVars
</IfModule>

<IfModule mod_rewrite.c>
    Options +FollowSymLinks
    RewriteEngine on

    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
    RewriteCond %{REQUEST_URI} !^/(media|skin|js)/
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-l
    RewriteRule .* index.php [L]
</IfModule>

AddDefaultCharset Off

<IfModule mod_expires.c>
    ExpiresDefault "access plus 1 year"
</IfModule>

Order allow,deny
Allow from all

<Files RELEASE_NOTES.txt>
    order allow,deny
    deny from all
</Files>
DirectoryIndex.php
php_值内存_限制10G
php_值最大执行时间1800000
php_标志魔术_引号_gpc关闭
php_标志session.auto_启动
关闭php_标志suhosin.session.cryptua
php_标志zend.ze1_兼容性_模式关闭
分离过滤器发动机关闭
secfilters可以关闭
斯登维加斯酒店
选项+FollowSymLinks
重新启动发动机
重写规则。*-[E=HTTP\U授权:%{HTTP:AUTHORIZATION}]
重写cond%{REQUEST_URI}^/(媒体|皮肤| js)/
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写cond%{REQUEST_FILENAME}-L
重写规则。*index.php[L]
添加默认字符集
ExpiresDefault“访问权限加1年”
命令允许,拒绝
通融
命令允许,拒绝
全盘否定
日志文件输出

==> /var/log/apache2/oem1-error.log <==
[Tue Oct 15 12:32:21 2013] [error] [client 192.168.0.4] File does not exist: /var/www/gearhead_oem1/admin

==> /var/log/apache2/oem1-access.log <==
192.168.0.4 - - [15/Oct/2013:12:32:21 -0600] "GET /admin HTTP/1.1" 404 507 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.69 Safari/537.36"

==>/var/log/apache2/oem1-error.log/var/log/apache2/oem1-access.log听起来像是重写的问题。在Ubuntu中:

运行:

然后:

service apache2 restart

mod_rewrite
现在将启用

检查您的.htaccess文件。您可能在旧服务器中部署时修改了该文件。如果可能,请在此处发布您的.htaccess代码。以及您的日志文件。尝试将您的.htaccess恢复到Magento附带的文件中。先看看这是否管用。@Axel好主意。也不行。您是否尝试过在
系统>配置>Web>搜索引擎优化
下禁用
使用Web服务器重写
,并查看URL是否有效?另外,您确定Apache启用了mod_rewrite吗?我还在您的答案中添加了php5 curl。a2enmod重写让我大部分时间都在那里,但我仍然有一些卷曲错误。