Nie można utworzyć katalogu wp-content w WordPress na serwerze Windows 2016

9

Nie mogłem przesyłać zdjęć do mojej witryny Wordpress za pomocą narzędzia do multimediów z panelu administracyjnego Wordpress. Otrzymuję następujący błąd.

„Logo512x512.png” nie zostało przesłane. Nie można utworzyć katalogu wp-content / uploads / 2020/01. Czy jego katalog nadrzędny jest zapisywany przez serwer?

Przeszedłem mnóstwo rozwiązań tego problemu, ale żadne nie zadziałało dla mnie. Jestem na maszynie z systemem Windows 2016. z bazą danych MySQL. Nie mam administratora PhP nie mam Cpanela.

Mój ftp działa. Jestem w stanie bez problemu uzyskać motywy i wtyczki. Jakieś pomysły?

Jose Enrique Calderon
źródło
3
Jakie rozwiązania próbowałeś? To może nam pomóc w dostarczeniu dodatkowych rozwiązań w odpowiednim czasie. Na przykład: jeśli nie możesz utworzyć katalogu wp-content, w jaki sposób masz foldery motywów i wtyczek działające tak, jak się znajdują w wp-content/themesi wp-content/plugins.
Aliqua
1
Głosuję za zamknięciem tego pytania jako nie na temat, ponieważ jest ono specyficzne dla WordPress i prawdopodobnie lepiej pasuje do wordpress.stackexchange.com.
David Makogon
Jak rozpoznałeś, że ten problem jest związany z MySQL?
Mathieu de Lorimier

Odpowiedzi:

3

Jednym z możliwych problemów są chmodustawienia folderu wp-content. Być może trzeba zmienić chmodza wp-contentlub jego katalogu nadrzędnego, aby umożliwić tworzenie dowolnego folderu folderu / pliku i dziecko / pliku w tym katalogu.

W zależności od tego, której aplikacji systemu Windows używasz do ustawiania chmod, określisz, jak ten proces zostanie przeprowadzony. Używam FileZilla i możesz po prostu -

Kliknij prawym przyciskiem myszy wp-content, wybierz File Attributesi ustaw Numeric value: 755.

FileZilla ustaw cdmod

Ponadto, czy zastanawiałeś się nad użyciem serwera WWW innej firmy, takiego jak XAMPP?

Aliqua
źródło
Dziękuję za wkład. BUt nr .. Nie używam i nie wolno instalować pliku filemozzila. Będę musiał korzystać tylko z narzędzi administratora serwera Windows.
Jose Enrique Calderon
Może mógłbyś zapytać na superuser.com? Uważam, że są odgałęzieniem tej społeczności i mają zapytania dotyczące firmy Microsoft. Powodzenia!
Aliqua
4

Miałem podobny problem z Google Cloud Engine Instance, bez cPanel, bez phpMyAdmin i FTP na Ubuntu i Apache. I rozwiązałem w ten sposób:

1. Zdefiniuj foldery przesyłania na wp-config.php

Otwórz wp-config.php za pomocą nano lub vim i dodaj następujący kod

define( 'UPLOADS', 'wp-content/uploads' );

przed tą linią:

require_once(ABSPATH . 'wp-settings.php');

i zapisz to.

2. Zmień właściciela

Przejdź do katalogu wp-content. W moim przypadku (użyj własnej ścieżki):

cd /var/www/html/wp-content

Następnie zmień właściciela na www-data

chown -R www-data:www-data plugins

Dlaczego dane www? W moim przypadku jest to nazwa konta usługi Apache działającego na moim serwerze. Możesz sprawdzić nazwę za pomocą:

ps aux | egrep '(apache|httpd)'

ta komenda zwraca kilka takich:

www-data  5441  0.0  5.8 566184 34896 ?        S    06:34   0:00 /usr/sbin/apache2 -k start
www-data  7753  0.0  5.9 566248 35512 ?        S    09:00   0:00 /usr/sbin/apache2 -k start
www-data  9840  0.0  5.7 566160 34320 ?        S    11:21   0:00 /usr/sbin/apache2 -k start
www-data 21068  0.0  6.2 564032 37192 ?        S    18:22   0:00 /usr/sbin/apache2 -k start
www-data 21069  0.0  6.0 563692 35636 ?        S    18:22   0:00 /usr/sbin/apache2 -k start
root     21455  0.0  0.1  13208  1036 pts/1    S+   18:44   0:00 grep -E --color=auto (apache|httpd)
root     31982  0.0  1.1 485904  6872 ?        Ss   Jan03   0:18 /usr/sbin/apache2 -k start

jak widzisz, root i www-data. Może w przypadku serwera Windows konto będzie inne (lista zadań? Pslist?), Nie wiem jak je zdobyć (nigdy nie korzystałem z serwera Windows, przepraszam). Mam nadzieję, że www-data działa dla Ciebie.

Na koniec upewnij się, że folder przesyłania ma odpowiednie uprawnienia

chmod 755 -R uploads

3. Przyznaj temu użytkownikowi prawa do korzystania z Wordpress

Do folderu HTML lub public_html (w moim przypadku / var / www / html zmień go na własną ścieżkę)

chown -R www-data /var/www/html

I voila. Mam nadzieję, że ten mały przewodnik był przydatny lub przynajmniej dał pomysły na jego rozwiązanie!

Patricio Villarroel
źródło
Twoje polecenie nie jest zbyt dobrze znane. Moje środowisko to serwer Windows.
Jose Enrique Calderon
Czy pytanie nie dotyczy systemu Windows Server? Jak to może być najlepsza odpowiedź?
Miles Davis
Wiem, że prosisz o serwer Windows. Ale mam nadzieję, że przeczytanie tych kroków pozwoli ci znaleźć podejście lub pomysł na rozwiązanie tego problemu w WS. Idk, coś w stylu „Ach ok, zmienisz właściciela wp-content” i zrób to za pomocą poleceń bash. Przykro mi, jeśli spodziewałeś się przepisu, który skopiujesz i wkleisz.
Patricio Villarroel
0

Cóż, znajomi powiedzieli o nadawaniu uprawnień do katalogów ... Ale w systemie Windows istnieje różnica między Linuksem, zalecam umieszczenie zawartości WP (tylko tego folderu) jako chmod 0777 i tak w bieżącym folderze do przesyłania (2020) jako chmod 0777. To powinno wystarczyć. I nawet jeśli zauważysz, że zawsze jest wskazówka, aby zawsze umieszczać 0755, radzę zostawić ją specjalnie w tych folderach.

Wykonaj kopię zapasową przed wszelkimi zmianami i uważam, że pomoże to w zarządzaniu przesyłaniem

dobrą alternatywą jest to, że co miesiąc WordPress tworzy nowy folder na ten miesiąc, a następnie zmieniasz uprawnienia do folderu na 0755 zgodnie z zakończonym miesiącem, dzięki czemu masz większe zaufanie do kwestii bezpieczeństwa

PauloBoaventura
źródło