2014-10-24 24 views
6

için Linux izni sorunu çözmek için nasıl PHP Opencart projesini dönmek hainlere kullanmıştı, ama örneği aşağıda gösterilmiştir bir izin sorunu (var:OpenCart

Uyarı açılamıyor ' /var/www/html/opencart/image/cache/data/pavblog/img-blog-620x300w.jpg 'Yazmak için: 45 satırda /var/www/html/opencart/system/library/image.php adresinde izin reddedildi

Uyarı: imagejpeg(): Yazmak için '/var/www/html/opencart/image/cache/data/pavblog/img-blog-250x250w.jpg' açılamıyor: İzin reddedildi/var/www/html/opencart/system/library/image.php on line 45

Uyarı: imagejpeg(): açılamıyor ... Ben aşağıda idam

bu klasörlerin izinleri komutları eklemek, ama yine de sitemde uyarı mesajları alıyorum.

sudo chmod 777 /var/www/html/opencart 
cd /var/www/html/opencart 
sudo chmod 777 image/ 
sudo chmod 777 image/cache/ 
sudo chmod 777 image/data/ 
sudo chmod 777 system/cache/ 
sudo chmod 777 system/logs/ 
sudo chmod 777 download/ 
sudo chmod 777 config.php 
sudo chmod 777 admin/config.php 

Bunu nasıl düzeltebilirim?

+0

(dosyalar izni yürütmek sahip olması tehlikeli olabilir) , dosya sahibi olarak gösterilir: kök, www-data, apache, veya başka biri? –

+0

sahibi, tüm klasörler ve dosyalar için köktür. –

+0

Pekala ... bu kesinlikle gerçek sorun. Ben http://unix.stackexchange.com/a/30888/47521 için size başvuracağım, bu doğru dosya izinleri daha iyi açıklayacaktır çünkü –

cevap

2

İzinleri yinelemeli olarak uygulamanız gerekir.

sudo chmod -R 777 image/cache/

+0

Özyinelemeyi kullanmak için iyi bir nokta var ama ben herkes için yürütülebilir izin verme hakkında _really_ leery. –

+2

Agreed, 777 asla sizin fikrinizle kullanılmamalıdır. Önce 644'ü dene, sonra işe yaramazsa 755'i dene. (tam kurulumunu bilmeden neye ihtiyacın olduğunu söylemek zor) – rjdown

6

izinlerinizi düzeltmek için deneyin, iki farklı adımlar atmak gerekir: Uygun varlığa

  1. Hibe izni./Var/www/html'deyseniz, tahminim doğru kullanıcının "apache" olması. Eğer klasörlerden birinde -al` `ls yaparsanız

    # Grants permissions to apache 
    sudo chown apache:apache -R /var/www/html/opencart 
    
    # If that doesn't work, perhaps try www-data 
    sudo chown www-data:www-data -R /var/www/html/opencart 
    
  2. düzgün dosya ve klasörlerin izinlerini ayarlayın

    # Sets directory permissions to 755 (rwxr-xr-x) 
    sudo find /var/www/html/opencart -type d -exec chmod 755 {} \; 
    
    # Sets file permissions to 644 (rw-r--r--) 
    sudo find /var/www/html/opencart -type f -exec chmod 644 {} \; 
    
+0

teşekkürler, -R! –

+1

Apache kullanıcısını bulun: '$ user = getenv ('APACHE_RUN_USER');' http://stackoverflow.com/a/17415081/560287 –

İlgili konular