2016-08-24 90 views
0

我有一個名爲'文件夾'的文件夾。我想在'文件夾'內創建一個名爲'文件夾'的文件夾,其中mkdir()PHP mkdir將只能在777文件夾內創建文件夾時工作

但是,當'文件夾'設置爲755時文件夾無法創建。唯一可以讓mkdir工作的是'文件夾'777這是典型的還是有其他問題?不應該能夠在755上做到這一點,是不是777有安全風險?

+0

您需要提供有關目錄所有權和用於創建目錄的帳戶的信息。 – user2182349

+0

[Unix權限](http://linuxcommand.org/lts0070.php)。因爲鏈接在其中一個表中進一步下降755 = *「文件的所有者可以讀取,寫入和執行文件,其他所有人都可以讀取和執行該文件,該設置對於所有用戶使用的程序都是常見的。 「*表示只有該文件夾的所有者可以在其中寫入內容。其他人只能讀取和執行。 777沒有限制 –

+0

我檢查了錯誤日誌,錯誤是「權限被拒絕」。那麼,我該如何給PHP提供與SSH相同的訪問權限呢?我使用SSH創建了「文件夾」目錄。 – nhiik

回答

0

目錄上的777權限意味着每個人都有可以讀/寫/執行(在目錄上執行意味着您可以執行ls的目錄)。

如果您無法在文件夾內創建文件夾,請嘗試下面的一個。

<?php 
    // Desired folder structure 
    $structure = './folders/folder/'; 

    // To create the nested structure, the $recursive parameter 
    // to mkdir() must be specified. 

    if (!mkdir($structure, 0755, true)) { 
     die('Failed to create folders...'); 
    } 
    ?> 
+0

不幸的是,將遞歸設置爲'true'也不起作用。我檢查了錯誤日誌,錯誤是「權限被拒絕」。那麼,我該如何給PHP提供與SSH相同的訪問權限呢?我使用SSH創建了「文件夾」目錄。 – nhiik

+0

您是否試圖將您要創建文件夾的文件夾chown? 'chown -R o + w foldername /' –

+0

我對此很陌生。當我這樣做時,回覆是「無效用戶」。 問題是PHP有權寫入此文件夾,我不知道如何啓用PHP的寫入權限 – nhiik

相關問題