3 votos

403 Prohibido al intentar acceder a Nginx

Acabo de conseguir un nuevo servidor y quiero probar algunas cosas diferentes. Como Nginx en lugar de Apache.

Así que instalé nginx, obtuve la página de bienvenida, instalé php5-fpm y descargué un Wordpress para probarlo.

Pero, todavía obtengo un 403 Forbidden cuando intento ir a la dirección...

Aquí está el archivo de configuración :

server {
  listen   80;
  server_name  localhost;
  access_log  /var/log/nginx/axiol.access.log;
  error_log  /var/log/nginx/axiol.error.log error;

  root  /usr/share/nginx/axiol;

  location ~ .php$ {
    fastcgi_split_path_info ^(.+\.php)(.*)$;
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  /usr/share/nginx/axiol$fastcgi_script_name;
    include fastcgi_params;
    fastcgi_param  QUERY_STRING     $query_string;
    fastcgi_param  REQUEST_METHOD   $request_method;
    fastcgi_param  CONTENT_TYPE     $content_type;
    fastcgi_param  CONTENT_LENGTH   $content_length;
    fastcgi_intercept_errors        on;
    fastcgi_ignore_client_abort     off;
    fastcgi_connect_timeout 60;
    fastcgi_send_timeout 180;
    fastcgi_read_timeout 180;
    fastcgi_buffer_size 128k;
    fastcgi_buffers 4 256k;
    fastcgi_busy_buffers_size 256k;
    fastcgi_temp_file_write_size 256k;
  }

  rewrite /wp-admin$ $scheme://$host$uri/ permanent;
  try_files $uri $uri/ /index.php?$args;
}

Ya verifiqué los permisos de chmod de la carpeta axiol.

¿Alguna idea?

8voto

Sašo Puntos 1064

Has cometido un error en la ubicación de php. Necesitas escapar . ya que de lo contrario se utiliza en regex.

  location ~ \.php$ {

Editar:

También debes agregar lo siguiente bajo server:

    index  index.html index.htm index.php;

Eso es necesario para pasar automáticamente al index.php (si index.html e index.htm no existen) si no se especifica ningún archivo.

0voto

tangrs Puntos 107

Compruebe qué usuario y grupo está ejecutando el servicio y asegúrese de que tenga permisos de lectura en los archivos y de ejecución en los directorios para la carpeta de nginx y todo lo que esté debajo de ella.

Puede verificar qué usuario está ejecutando el servicio de nginx ejecutando este comando y observando la primera columna:

ps aux | grep nginx

(Estos son permisos muy estrictos, pero seguros)

find /usr/share/nginx/ -type f | xargs chmod 444
find /usr/share/nginx/ -type d | xargs chmod 555

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X