magento 2管理员URL无法正常工作,并且加载的前端杂乱无章


30

在wamp服务器上安装magento 2后,管理URL显示404错误,并且前端设计非常混乱并且css未链接到它。错误视觉效果如下所示。

Frontend error:

在此处输入图片说明

Answers:


64

首先,应用适当的权限,启用apache rewrite_module并刷新apache服务器。

chmod -R 777 /var/www/html/MAGENTO_2_ROOT_DIRECTORY/

sudo a2enmod rewrite

sudo service apache2 restart

对于混乱的前端,请从Magento根目录运行以下命令:

php bin/magento setup:static-content:deploy

现在清除var.htaccess文件以外的目录,然后检查admin。如果显示404页面,则可能存在问题Symlink。为此,编辑apache config文件

sudo gedit /etc/apache2/apache2.conf

并替换此代码:

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

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

注:AllowOverride noneAllowOverride All

现在重新启动apache sudo service apache2 restart并检查admin。这应该解决管理员404问题。

另外请确保您不要将/app/etc/目录保留为可写状态


1
这对我有用,只是我没有将所有权限都更改为777。确保您不留下/ app / etc /可写的内容
David Wilkins

@DavidWilkins:乐于助人,我感谢您的观点。更新了我的答案
Anil Suthar,2016年

1
谢谢,这工作!我先犯了一个错误,然后改了错AllowOverride。只需确保其下<Directory /var/www/>
marshy101 '16

像魅力一样工作。:)
dhruvvyas90 '16

完美的作品!为什么不接受它的答案?
库尔



4

解决方案1(如果您要编辑XML文件)

我希望您从下载Magento 2 zip magentocommerce.com/download,在phpmyadmin中创建新的数据库,在htdocs文件夹中提取zip 。安装Magento 2,但不要使用localhost在商店URL和管理URL中使用127.0.0.1。成功安装后,请勿运行magento。

现在,我们将清除/删除Magento 2的缓存和会话。转到以下路径并删除所有内容:

ROOT > var > cache > *DELETE ALL*
ROOT > var > page_cache > *DELETE ALL*
ROOT > var > session > *DELETE ALL*

当Magento 2不在生产模式下时,它将尝试为本地服务器上的某些静态资源创建符号链接。我们必须通过编辑ROOT > app > etc > di.xml文件来更改Magento 2的行为。di.xml在您喜欢的代码编辑器中打开,找到该virtualType name="developerMaterialization"部分。在下面的该部分中,您将找到<item name="view_preprocessed" xsi:type="object">需要修改的项目。您可以通过更改以下内容进行修改:

Magento\Framework\App\View\Asset\MaterializationStrategy\Symlink

至:

Magento\Framework\App\View\Asset\MaterializationStrategy\Copy

现在,最后一步,还要删除在 ROOT > pub > static > DELETE ALL EXCEPT .HTACCESS

我亲自在本地主机上使用MAMP,EasyPHP DevServer,Xampp和Wampp进行了尝试,并成功安装并使用了Magento2。有关更多信息,您可以查看以下链接: Magento 2 CSS和JavaScript无法从正确的文件夹加载

解决方案2

安装Composer。现在,我希望您从下载Magento 2 zip magentocommerce.com/download,在phpmyadmin中创建新的数据库,在htdocs文件夹中提取zip 。安装Magento 2,但不要使用localhost在商店URL和管理URL中使用127.0.0.1。成功安装后,请勿运行magento。

现在,我们将验证Composer的安装,部署静态内容,清除/刷新Magento缓存并为Magento 2块重新编制索引。要执行上述所有操作,请按WINDOWS KEY + R打开“运行”对话框,然后键入“ cmd”以打开命令提示符。

输入“ cd PATH_TO_YOUR_MAGENTO2_FILES ”以进入Magento 2 ROOT目录。

现在,要在以上目录中验证Composer安装,请键入“ composer install ”。

如果在此步骤中遇到任何错误,请检查您的Composer安装

在此步骤中,我们将设置静态内容以部署在我们的Magento商店中。要执行此操作,请键入“ php bin / magento setup:static-content:deploy ”。

如果遇到任何错误,请检查您的PHP.EXE和PHP.INI环境变量

通过在CMD中键入“ php bin / magento cache:flush ” 来清除/刷新Magento缓存。

最后,要重新索引 Magento静态块,请输入“ php bin / magento indexer:reindex ”。

成功安装Magento 2,您已完成。


答案已被编辑。
Fayyaz Khattak

#1对我不起作用,Magento 2.1.0。这似乎工作,如果我段添加index.php来的网址
刺松

#2也无法正常工作:(
Codium

1
@drupality请检查这篇文章,看看是否还有其他遗漏: magenticians.com/fix-broken-magento-2-installation
Fayyaz Khattak

读到,仍然没有运气,最新的Magento版本出了点问题。屁股的主要疼痛
Codium

4

打开终端并导航到magento Web根目录

 $ cd / var / www / html / magento2 
步骤1。

$ php bin / magento设置:静态内容:部署

第2步。

$ php bin / magento索引器:重新索引

第三步

确保启用了Apache“ rewrite_module”,然后重新启动服务器

$ sudo a2enmod重写&& sudo服务apache2重新启动

第四步。

$ chown -R www-data:www-data / var / www / html / magento2 

步骤五

 $ chmod -R 777 / var / www / html / magento2 /

第六步

删除var / cache下的缓存文件夹

http://gotechnies.com/css-javascript-files-loading-magento-2-installation/


始终有效:)
aman tilak

4

修复了面临的相同问题。

如上所述,php bin/magento setup:static-content:deploy通过终端在您的Magento 2安装目录中运行命令并授予权限。

对于管理员而言,这是错误(404),因为:

<Directory "/var/www/html">
    AllowOverride  all
</Directory>` 

不存在于文件的末尾/etc/apache2/sites-available/000-default.conf之前</VirtualHost>。另外,mod_rewrite通过输入以下命令确保已启用:

a2enmod rewrite

添加该行并重新启动apache2。现在可以访问管理员。希望能帮助到你。


如何在实时托管中做到这一点?我是在本地主机上完成的。
阿布阿布(Abu abu)

3

我用作曲家安装了magento2(在xampp win7上):

1.git clone https://github.com/magento/magento2/tree/master
2.cd magento2
3.git checkout master
4.composer install
5.php bin/magento sampledata:deploy
6.composer update

然后我用Web安装程序安装了magento2,并且在两个前端后端页面上都出现404错误(找不到页面)。然后我打开magento2 \ app \ etc \ di.xml并删除了这一行

<item name="view_preprocessed" xsi:type="object">Magento\Framework\App\View\Asset\MaterializationStrategy\Symlink</item>

我也删除了env.php并在前端和后端正常后再次进行了Web安装:)




3
  1. 从pub-> static文件夹中删除所有文件,并执行fire upgrade命令和deploy命令,以便再次在pub-> static文件夹中看到文件夹和文件,然后打开管理面板或前端。这对我有用。

  2. 如果仍然无法获取,请从var-> generation文件夹中删除所有文件和文件夹,然后再次触发PHP upgrade and deploy命令,并检查admin和前端是否正确可见。


2

您将转到目录install magento2。之后,在终端中使用命令:bin/magento setup:static-content:deploy并为pub, var文件夹设置权限具有770权限


2

只需打开

MAGENTO_ROOT / app / etc / di.xml

并替换下面的代码表格行号574

<item name="view_preprocessed" xsi:type="object">Magento\Framework\App\View\Asset\MaterializationStrategy\Symlink</item>

<item name="view_preprocessed" xsi:type="object">Magento\Framework\App\View\Asset\MaterializationStrategy\Copy</item>


2

最简单的解决方案表单管理员网址是

在核心配置表中,将web / seo / use_rewrites的值更改为0(1到0),并且所有缓存文件夹的形式为var

第二个禁用版本管理表单的工具

如何禁用静态文件版本控制:

如果您不想使用静态文件版本控制,则可以在Magento管理区域中禁用此功能:

配置

可以使用以下MySQL查询将此设置更改为默认范围:

INSERT INTO 'core_config_data' ('path', 'value') 
    VALUES ('dev/static/sign', 0) 
    ON DUPLICATE KEY UPDATE value = 0;

然后执行下一条命令清除配置缓存:

bin/magento cache:clean config

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.