Reputation: 507
I'm having this weird error and I did not suceed to find the origin. First of all I would like to say that I succeeded to perform some installation of Magento 2 on a windows os with a xampp server before.
I'm now trying to install a magento instance on Windows Server with IIS
Basically after configuring composer etc.. the installations runs well. No error mentioned during the installation process etc..
However at the end when I try to access at the backend or the front store it display the page but no css or images files are loaded. When I looked in the missing ressources, basically I have 404 errors for all css & images files supposed to be located in the following folders
pub/static/frontend/*
pub/static/backend/*
Physically in my folder pub/static/ there is only the _requirejs folder and .htaccess file but no folder frontend and backend
I guess the folder frontend and backend are generated automatically because they are not by default in the initial clone of magento 2.0
So if anyone has got any ideas of where the problem could come from.
Additional information to consider: I have checked the permissions, the web server has full access (read and write) on every folders and file magento 2.0 root directory.
Upvotes: 12
Views: 16203
Reputation: 11
First please delete 'static' folder from 'pub/static' in magento 2 before delete this folder please copy .htaccess file from this folder in other folder in your pc. <-- Changes in app\code\Magento\Developer\etc\di.xml -->
Magento\Framework\App\View\Asset\MaterializationStrategy\Symlink
<--to-->
Magento\Framework\App\View\Asset\MaterializationStrategy\Copy
After that using cmd/shell run these commands
php bin/magento setup:static-content:deploy -f
and
php bin/magento deploy:mode:set developer
After runing these commands .Paste old .htaccess file into new static folder. Thats it. And Clear Full Cache.
php bin/magento cache:clean
Your project working now enjoy!
Upvotes: 0
Reputation: 1646
An easier would be to run below command from magento root folder.
php bin/magento setup:static-content:deploy
This will feed the content perfectly in respective folders. If you have specific language then run like below.
php bin/magento setup:static-content:deploy en_US
php bin/magento setup:static-content:deploy en_GB
Upvotes: 20
Reputation: 183
When installing Magento 2.1.4 from scratch I also confronted with permissions problems and CSS and JS not loading in the page because they were not found by the server although I just ran
php bin/magento setup:static-content:deploy
and
php bin/magento cache:clean
It turned out that this setting is needed in the database to access the CSS and JS and have the site loading after first magento2 install.
insert core_config_data (config_id, scope, scope_id, path, value) values (null, 'default', 0, 'dev/static/sign', 0);
This seemed to be the only sollution to have the site up and working.
Upvotes: 1
Reputation: 1781
The static content deploy process is described as below:
1) Delete adminhtml,frontend and _requirejs folders from pub/static folder.
2) Please don't delete the .htacces file in that pub/static folder.
3) Delete all folders in the directory var/cache.
4) Give 777 permission to both pub and var folders.
5) Run the command:
php bin/magento setup:static-content:deploy
Upvotes: 3
Reputation: 467
You get 404 responses probably because you don't have mod_rewrite enabled. You should enable it. But it can work without it. There is a 'cache' system for these static resources. navigate to the folder dev/tools/Magento/Tools/View and run this in the command line
php deploy.php
It works perfect. But still if you have issues then let me know.
------ EDIT ------
Edit as per the Chirag Bhavsar's answer.Enter below command from root of the Magento folder. New command will be
php bin/magento setup:static-content:deploy
Upvotes: 2