He configurado un servidor LAMP y tengo acceso a través de SSH y a la página "funciona" desde un navegador web desde dentro de mi red (a través de la dirección IP) y desde afuera usando dyndns.
Tenemos algunos proyectos de Wordpress que se encuentran en subdirectorios en / var / www / wordpress1 / var / www / wordpress2, etc. No puedo acceder a estos subdirectorios desde un navegador para configurar WP o (supongo) para ver contenido en un navegador. Recibo un error prohibido 403 en mi navegador.
Supongo que este es un problema de permisos. ¿Puede decirme la configuración adecuada de los permisos para:
- Permitir a los desarrolladores y a mí leer / escribir.
- para permitir que WP se configure y haga lo suyo
- Permita que los visitantes accedan a los sitios a través de la web.
También debo mencionar que la subcarpeta en realidad son enlaces simbólicos a la carpeta en otro disco duro interno; no creo que esto haga una diferencia, pero pensé que debería revelarlo.
total 12
drwxr-xr-x 2 root root 4096 2012-07-12 10:55 .
drwxr-xr-x 13 root root 4096 2012-07-11 20:02 ..
lrwxrwxrwx 1 root root 43 2012-07-11 20:45 admin_media -> /root/django_src/django/contrib/admin/media
-rw-r--r-- 1 root root 177 2012-07-11 17:50 index.html
lrwxrwxrwx 1 root root 14 2012-07-11 20:42 media -> /hdd/web/media
lrwxrwxrwx 1 root root 18 2012-07-12 10:55 wordpress -> /hdd/web/wordpress
Aquí está el resultado de usar chown -R www-data:www-data /var/www
total 12
drwxr-xr-x 2 www-data www-data 4096 2012-07-12 10:55 .
drwxr-xr-x 13 root root 4096 2012-07-11 20:02 ..
lrwxrwxrwx 1 www-data www-data 43 2012-07-11 20:45 admin_media -> /root/django_src/django/contrib/admin/media
-rw-r--r-- 1 www-data www-data 177 2012-07-11 17:50 index.html
lrwxrwxrwx 1 www-data www-data 14 2012-07-11 20:42 media -> /hdd/web/media
lrwxrwxrwx 1 www-data www-data 18 2012-07-12 10:55 wordpress -> /hdd/web/wordpress
Todavía no puedo acceder a través del navegador.
ls -la /var/www
.chown -R www-data:www-data /var/www
/hdd/web/wordpress
sería configurar Apache (directorio raíz) correctamente. Puede configurar Apache para usar enlaces, pero no lo aconsejo. Consulte también help.ubuntu.com/community/WordPressRespuestas:
Primero, debe asegurarse de que su nombre de usuario esté incluido en el
www-data
grupo. Si no, puede agregar su nombre de usuario comowww-data
grupoDespués de eso, debe cambiar la propiedad de / var / www a su nombre de usuario
Siguiente paso, para la práctica general , debe cambiar el permiso a 755 (rwxr-xr-x), no recomendar cambiar el permiso a 777 por razones de seguridad
En relación con el permiso específico para WordPress o Laravel u otro marco, puede leer la documentación respectivamente.
Espero eso ayude...
fuente
sudo chown www-data:www-data -R mywordpressdirectory/
chmod
. Está cambiando el permiso a 755 con bits adhesivos (para mantener nuevos archivos propiedad de www-data.)Aparentemente, así es como se recomienda en la Guía del servidor de Ubuntu:
Capítulo 11. Servidores web.
1.4. Compartir permiso de escritura
Para que más de un usuario pueda escribir en el mismo directorio, será necesario otorgar permiso de escritura a un grupo que comparten en común. El siguiente ejemplo otorga permiso de escritura compartido a / var / www / html al grupo "webmasters"
Yo uso www-data . Simplemente reemplace "webmasters" con su grupo, asegúrese de agregar el usuario al grupo, por supuesto.
Acabo de probarlo con Dreamweaver desde mi escritorio de Mac y cargué y reemplacé archivos, agregué archivos, etc. El directorio html conserva su propiedad como root, pero el usuario local puede editarlo.
Espero que esto aclare las cosas y ayude a los cansados, porque sé que siempre estaba cansado de esta situación, pero ahora está claro para mí.
Ah, y recomiendo usar sftp con claves para acceder a su ftp, funciona muy bien para mí y no necesito PureFTP ni ningún otro método inseguro para entregar los archivos al sitio web. Hay algunos buenos tutoriales en el sitio de Digital Ocean sobre cómo asegurar su servidor con claves ssh:
Cómo configurar la autenticación basada en clave SSH en un servidor Linux
fuente
find
con solosudo chmod -R g=srwX /var/www/html
.find -exec chmod
generará un programa separado para cada archivo, lo que lleva mucho tiempo y ejerce una presión innecesaria sobre el sistema si tiene muchos archivos. Solución:sudo find /var/www/html -type f -print0 |sudo xargs -0 chmod g=rw
. xargs intentará alimentar tantas rutas de archivos como sea posible a una sola instancia dechmod
.Compruebe que Apache tiene derechos de ejecución para
/hdd/web/media
y/hdd/web/wordpress
.Correr:
Además, Apache debe configurarse para permitir el acceso al directorio en el sistema de archivos. Esto debe hacerlo un administrador del sistema insertando una directiva en los archivos de configuración de apache (httpd.conf).
Dado que el directorio real está dentro de la raíz web, debe ser accesible, pero FollowSymLinks puede no haber sido habilitado para el directorio; esto también debe agregarse a la directiva.
Ver http://httpd.apache.org/docs/2.0/mod/core.html#directory
fuente
Lectura de la guía de instalación para Ubuntu ..
Tal vez podría ser más fácil instalarlo de esta manera en lugar de intentar descomprimir los archivos en
/var/www
https://help.ubuntu.com/community/WordPress ...
de alguna manera wordpress se ejecuta en apache ... ¿verdad? si quieres hacerlo de esa manera ... muestra do como @metamorph y luego da permiso en apache2 de
httpd.conf
esta manera:y luego
default-server.conf
.Quizás sea mejor hacer el paso a paso https://help.ubuntu.com/community/WordPress
fuente