enter code hereHi all my on windows 7(so i don't have any folder permissions) I have can't see Laravel error anymore. It worked fine yesterday.
why? what's wrong?
Laravel version 5.1 and web server wamp lastest version.
I found this link
but can't find file - storage/meta/compiled.php
this command also not working for me - php artisan optimize
also debug = true in .env and app.php files
please help
If you read the installation documentation you will find the following information:
After installing Laravel, you may need to configure some permissions. Directories within the storage and the bootstrap/cache directories should be writable by your web server. If you are using the Homestead virtual machine, these permissions should already be set.
Related
I have seen this answer in many posts but they have not helped me at all. I followed the regular steps to create the laravel project like this:
I cloned from my repository.
I ran composer update.
I added 777 permissions to storage and bootstrap folders.
I have a .env file.
I verfied the .htacces and it's ok.
It is working in locahost, but when I try to replicate it in Hostinger it does not work, it displays the 500 server error. So I wonder what is the problem?
I checked the logs by the way and they were empty. I put the laravel project debugger to true too.
the website url is xellin.com
The debug:
The logs folder:
Thanks.
I think this is a good opportunity to point out how PHP / Laravel / Underlying Server interacts one to each other.
First:
The HTTP server inspects Document Root and .htaccess to get instructions.
If the file is .php (like Laravel), then it CALLS to the php handler.
The php handler could be a FPM version or a Fast CGI version.
-> If an error ocurrs parsing the .htaccess or with the initial interaction between Http Server and PHP... Laravel never runs for real. All ends in a PHP error log
To find out what's wrong, you need to inspect what PHP / Http Server said about the error in their respective logs.
In short words: at this point is not a Laravel error, but a server/php one.
Second:
If Apache/PHP runs well, then PHP executes the Laravel Applicacion Lifecycle... if Laravel encounters a problem, then you will see the usual output error of Laravel Error Handler.
I think this is a must to know to work with web apps in general, because many times developers miss to catch if the problem was with Laravel, or with PHP / Server itself.
As a side note, that's why it is important to know how to choose propper hosting service for Laravel.
Thanks for reading.
You can try to clear cache
Like as
php artisan optimize
Or
You can manually delete cache files which is located in bootstrap folder and inside bootstrap folder you can see cache folder inside cache folder delete all files except git ignore file your issue fix
If you show again this error on live serve then tou can update your composer and then run
php artisan optimize
at first, if you give any of your folders 777 permissions, you are allowing ANYONE to read, write and execute any file in that directory.... what this means is you have given ANYONE (any hacker or malicious person in the entire world) permission to upload ANY file, virus or any other file, and THEN execute that file...so please be careful because IF YOU ARE SETTING YOUR FOLDER PERMISSIONS TO 777 YOU HAVE OPENED YOUR SERVER TO ANYONE THAT CAN FIND THAT DIRECTORY. please read the full explanation from here
the second here is the detailed steps I used to deploy my projects to the server:
run npm run production then update your github repo.
clone the project from GITHUB to server - clone to an outside folder (not public_html folder)
run cd <cloned folder name>
run composer install
run npm install
copy and configure .env file to cloned folder( be sure name is .env not env).
copy all content of cloned_project_folder_name/public to public_html folder
in index.php inside public_html folder edit as below
$app = require_once __DIR__.'/../cloned_project_folder_name/bootstrap/app.php';
require __DIR__.'/../cloned_project_folder_name/vendor/autoload.php';
set your .htaccess properly.
change permission to 755 to index.php and all file in public_html folder
run composer install --optimize-autoloader --no-dev
run php artisan config:cache
run php artisan route:cache
I think I state it all, hope that will help
I have this website. The problem I have is
The freelancer-ngohungphuc.rhcloud.com page isn’t working
freelancer-ngohungphuc.rhcloud.com is currently unable to handle this
request.
500
I develop this website using Laravel 5.1. So what I have to do to fix this error.
Although you can usually check logs to see why you are getting a 500 error, it would appear that this is due to insufficient permissions - which need to be set on the storage and bootstrap/cache folders (as per the docs).
The folders both need to be writeable by your web server, so whilst 777 permissions will definitely work 775 should be fine (and more secure).
Doing this via a command line can be done with the following command (run it with sudo if you need to elevate to root permissions) chomd 777 -R storage bootstrap/cache or chomd 775 -R storage bootstrap/cache.
Doing this via an FTP client is doable, generally speaking you can just right click on the folder and choosing to edit permissions from there.
In some instances, vendor may need to be done too - from my experiences anyway.
These folders are all inside the root project directory for your Laravel application.
Edit
Excerpt from bottom of error log:
PHP Parse error: syntax error, unexpected 'class' (T_CLASS), expecting identifier (T_STRING) or variable (T_VARIABLE)
This would indicate that the PHP version you are running is not >= 5.5.9 (one of the Laravel requirements).
This is confirmed in the screenshot shown of the OpenShift configuration. The version of PHP needs to be updated for Laravel to work - this wasn't just a permission issue.
I have installed new site in Joomla 1.7 and its working fine, but when i checked its back-end (administrator) got 500 Internal Server Error.
Note: Site is working fine in Local server.
Please suggestion me any solution.
Thanks in advance.
First you have change folder permission to 775 for the following folders:
cache, logs, tmp & administrator/cache
then go to: configuration.php
find code:
$log_path = 'XXXXXXXXXXXXX';
$tmp_path = 'XXXXXXXXXXXXX';
and change code into:
$log_path = './logs';
$tmp_path = './tmp';
problem solved :)
I had this problem, but none of your advices didn't help.
I fixed a problem only after I switched off all modules via PhpMyAdmin (PMA).
Table modules, changed parameter "published" to 0 for all and then enabled only few modules with these types:
mod_login
mod_menu
mod_sumbenu
mod_toolbar
mod_title
After this I entered admin page and used top menu to enable all needed modules one by one. After admin page started to give me 500 error again I knew what module is faulty and I disabled it again via PMA.
May be some files are not uploded.Check failed transfer of your FTP server.Make sure all the files are uploded online
Check your error logs and backtrace what is causing the error. It sounds like you have MySQL errors, make sure any of your components/modules/aren't tricking out your site.
Think it's a component?
You can login into PHPMyAdmin and disable/enable modules manually by unpublishing them using the table editor, changing isPublished to 0 .
Try reinstalling database with the correct compatibility and also check web.config file on ftp for correct configuration paths !
I experienced something similar on my site. Digging through the log file, /administrator/error_log i saw this error message:
[08-Oct-2012 15:28:59] PHP Fatal error: Call to a member function login() on a non-object in /home/XXX/public_html/administrator/components/com_login/admin.login.php on line 65 .
Problem was, i had a previous installation of Joomla 1.5.x, and uploaded files for Joomla 1.6 to replace the previous files and upgrade security of the site. Took me almost a month to find a solution for my own case;
Finally found out from this website that I needed to completely delete all previous files in the website root directory before uploading a new version of Joomla.
Hope this helps someone out there who is in the same situation!
I also have the same issue on my site backend when editing or saving some articles, modules etc...Finally i solved it...
Add these lines to /etc/httpd/conf.d/mod_secuirity.conf on your server
SecRuleEngine Off
save it...and restart apache...it works fine for me.
Adding these lines disable mod_secuirity engine off.I don't know if it causes secuirity problems in future..
Tnx all...
Change the permission of folder administrator at 775 or 755
I tried all the above ideas. Without avail. For my site (which was an outdated Joomla 1.5.x site- don't ask!!!), where the backend suddenly stopped working, the final solution was switching the servers PHP version from 4 to 5.5 (even 5.4 did not work!).
I then got some strange PHP warnings in the frontend. But I then updated Joomla from the now again working backend to the last 1.5 version and everything worked fine from the on.
Phew! Maybe this helps someone later on...
In my case there was a single file with bad permissions.
It can be tricky to figure out which file has the problem so just run this to set the permissions for all the files in the directory:
chmod -R ug+rwX .
chmod -R o+rX .
Change the permissions of all of your files/directories.
Files should be 755
Directories should be 644
This is my case and my solution:
I have changed my server and got this error. I have protected my administrator folder using password protection method. So I have checked my new server and found that my protection information are not saved in control panel. also my .htaccess file (in administrator folder) is not compatible to my new server.
The solution:
Simply protect my folder using control panel
I have renamed the .htaccess file to htaccess.txt
It is done.
I hope it could be useful ;)
i have upgraded my XAMPP server to 1.7.7, after that the file uploaded using the php move_uploaded_file function is not accessible from the network. It works OK in the server. But from a remote machine it shows there is not enough permission.I can see the files in the uploads folder but I can't copy,move, rename or preview it.
$isMove = move_uploaded_file ($_FILES['image']['tmp_name'],'uploads/'.$_FILES['image']['name']);
if I uses the copy function instead of the move_uploaded_file it works perfect. But i have used move_uploaded_files in many projects. Is there any fix for this problem.
Also a project using the zend optimizer is also not working after the upgrade.
I think that you need to set permissions of the directory so as PHP scripts can run with uid of user who has write permission or else in the case if the permissions are not such if they give write permission to user www-data they may give error.
I have installed new site in Joomla 1.7 and its working fine, but when i checked its back-end (administrator) got 500 Internal Server Error.
Note: Site is working fine in Local server.
Please suggestion me any solution.
Thanks in advance.
First you have change folder permission to 775 for the following folders:
cache, logs, tmp & administrator/cache
then go to: configuration.php
find code:
$log_path = 'XXXXXXXXXXXXX';
$tmp_path = 'XXXXXXXXXXXXX';
and change code into:
$log_path = './logs';
$tmp_path = './tmp';
problem solved :)
I had this problem, but none of your advices didn't help.
I fixed a problem only after I switched off all modules via PhpMyAdmin (PMA).
Table modules, changed parameter "published" to 0 for all and then enabled only few modules with these types:
mod_login
mod_menu
mod_sumbenu
mod_toolbar
mod_title
After this I entered admin page and used top menu to enable all needed modules one by one. After admin page started to give me 500 error again I knew what module is faulty and I disabled it again via PMA.
May be some files are not uploded.Check failed transfer of your FTP server.Make sure all the files are uploded online
Check your error logs and backtrace what is causing the error. It sounds like you have MySQL errors, make sure any of your components/modules/aren't tricking out your site.
Think it's a component?
You can login into PHPMyAdmin and disable/enable modules manually by unpublishing them using the table editor, changing isPublished to 0 .
Try reinstalling database with the correct compatibility and also check web.config file on ftp for correct configuration paths !
I experienced something similar on my site. Digging through the log file, /administrator/error_log i saw this error message:
[08-Oct-2012 15:28:59] PHP Fatal error: Call to a member function login() on a non-object in /home/XXX/public_html/administrator/components/com_login/admin.login.php on line 65 .
Problem was, i had a previous installation of Joomla 1.5.x, and uploaded files for Joomla 1.6 to replace the previous files and upgrade security of the site. Took me almost a month to find a solution for my own case;
Finally found out from this website that I needed to completely delete all previous files in the website root directory before uploading a new version of Joomla.
Hope this helps someone out there who is in the same situation!
I also have the same issue on my site backend when editing or saving some articles, modules etc...Finally i solved it...
Add these lines to /etc/httpd/conf.d/mod_secuirity.conf on your server
SecRuleEngine Off
save it...and restart apache...it works fine for me.
Adding these lines disable mod_secuirity engine off.I don't know if it causes secuirity problems in future..
Tnx all...
Change the permission of folder administrator at 775 or 755
I tried all the above ideas. Without avail. For my site (which was an outdated Joomla 1.5.x site- don't ask!!!), where the backend suddenly stopped working, the final solution was switching the servers PHP version from 4 to 5.5 (even 5.4 did not work!).
I then got some strange PHP warnings in the frontend. But I then updated Joomla from the now again working backend to the last 1.5 version and everything worked fine from the on.
Phew! Maybe this helps someone later on...
In my case there was a single file with bad permissions.
It can be tricky to figure out which file has the problem so just run this to set the permissions for all the files in the directory:
chmod -R ug+rwX .
chmod -R o+rX .
Change the permissions of all of your files/directories.
Files should be 755
Directories should be 644
This is my case and my solution:
I have changed my server and got this error. I have protected my administrator folder using password protection method. So I have checked my new server and found that my protection information are not saved in control panel. also my .htaccess file (in administrator folder) is not compatible to my new server.
The solution:
Simply protect my folder using control panel
I have renamed the .htaccess file to htaccess.txt
It is done.
I hope it could be useful ;)