Página 3 de 3 PrimeiroPrimeiro 123
+ Responder ao Tópico



  1. Vamos tentar uma coisa diferente

    mude a inicializacao do seu php-fpm para o codigo abaixo
    Código :
    #! /bin/sh
     
    ### BEGIN INIT INFO
    # Provides:          php-fpm
    # Required-Start:    $remote_fs $network
    # Required-Stop:     $remote_fs $network
    # Default-Start:     2 3 4 5
    # Default-Stop:      0 1 6
    # Short-Description: starts php-fpm
    # Description:       starts the PHP FastCGI Process Manager daemon
    ### END INIT INFO
     
    LD_LIBRARY_PATH=/usr/local/instantclient_11_2:$LD_LIBRARY_PATH
    export LD_LIBRARY_PATH
    ORACLE_HOME=/usr/local/instantclient_11_2
    export ORACLE_HOME
    LD_PRELOAD=/usr/local/instantclient_11_2/libclntsh.so.11.1
    export LD_PRELOAD

  2. Caro amigo,

    muito, muito obrigado pela atenção. Eu fui orientado a montar um servidor Nginx a pedido de uma empresa vencedora de uma licitação, que argumentou que o Apache não "aguentaria" o nível de acesso que o novo portal a ser construído teria. Pois bem, trabalho com Apache já alguns anos e nunca vi Apache cair desta forma(Só o site da Cespe quando a galera precisa conferir o local de prova), mas o que precisava mesmo era colocar este troço para funcionar.

    Gostei muito do Nginx e estou aprendendo a domá-lo, claro que seria bem mais fácil se grande parte de suas listas de discussões não fossem em Japonês, Turco e Russo, mas isso é só um detalhe.

    Antes de postar no fórum eu já havia desistido de tentar novamente fazer minha aplicação em php rodar no Nginx acessando a porcaria do Oracle, porém resolvi postar minha dúvida em 3 fóruns que gosto muito, o Viva o Linux, Debian Fórum e aqui no Under-Linux. Pois bem, você foi o único que conseguiu me ajudar um pouco e quando começou a me responder, me motivou a voltar a procurar sobre isso.

    Enfim, li no stackoverflow(ruby on rails - How do I pass ImageMagick environment variables to nginx mongrels? - Stack Overflow) uma resposta de um post, dizendo que o Nginx não lida com variáveis de ambiente e não foi feito para isso, principalmente por causa de seu design, segurança e administração. Citou também que o modo passenger utilizado para o Ruby(utilizado para passar variáveis de ambiente) é um módulo feito por terceiros e que não respeita os padrões do Nginx e no final, ele argumenta que existem várias formas de resolver este problema sem que o Nginx tenha de lidar com isso.

    Percebi que era mesmo necessário eu utilizar somente o php-fpm para passar as variáveis, como você que já estava seguindo esta linha de raciocínio.
    Sinceramente eu já tinha testado algumas coisas do que você escreveu, somente o start do php-fpm é que eu não havia tentado ainda. Então, navegando no Google, li este post Environment variables and php settings through fastcgi_param no fórum do Nginx com uma observação maior do que a de costume e percebi que o camarada passava as variáveis de ambiente via fastcgi para o Nginx do jeito que eu já fazia, só que com uma pequena observação, o v**** usava "aspas duplas" no caminho do diretório.

    Pois bem, chega de embromação, segue abaixo a solução.

    Este abaixo é meu arquivo nginx.conf

    Código :
    #user  nobody;
    worker_processes  1;
     
    #error_log  logs/error.log;
    #error_log  logs/error.log  notice;
    #error_log  logs/error.log  info;
     
    #pid        logs/nginx.pid;
     
    events {
        worker_connections  1024;
    }
     
     
    http {
        include       mime.types;
        default_type  application/octet-stream;
     
        #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
        #                  '$status $body_bytes_sent "$http_referer" '
        #                  '"$http_user_agent" "$http_x_forwarded_for"';
     
        #access_log  logs/access.log  main;
     
        sendfile        on;
        #tcp_nopush     on;
     
        #keepalive_timeout  0;
        keepalive_timeout  65;
     
        #gzip  on;
     
        server {
            listen       80;
            server_name  localhost;
     
            #charset koi8-r;
     
            #access_log  logs/host.access.log  main;
     
            #location / {
            #    root   html;
            #    index  index.html index.htm;
            #}
     
        location / {
              fastcgi_pass   localhost:9000;
              fastcgi_index  index.php;
     
              fastcgi_param  ORACLE_HOME      "/usr/local/instantclient_11_2/network/admin";      <--Aqui está a mágica
              fastcgi_param  LD_LIBRARY_PATH  "/usr/local/instantclient_11_2";                    <--Aqui está a mágica
     
              fastcgi_param  SCRIPT_FILENAME  /srv/www$fastcgi_script_name;
              fastcgi_param  QUERY_STRING     $query_string;
              fastcgi_param  REQUEST_METHOD   $request_method;
              fastcgi_param  CONTENT_TYPE     $content_type;
              fastcgi_param  CONTENT_LENGTH   $content_length;
        }
     
            #error_page  404              /404.html;
     
            # redirect server error pages to the static page /50x.html
            #
            error_page   500 502 503 504  /50x.html;
            location = /50x.html {
                root   html;
            }
     
            # proxy the PHP scripts to Apache listening on 127.0.0.1:80
            #
            #location ~ \.php$ {
            #    proxy_pass   http://127.0.0.1;
            #}
     
            # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
            #
            #location ~ \.php$ {
            #    root           html;
            #    fastcgi_pass   127.0.0.1:9000;
            #    fastcgi_index  index.php;
            #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            #    include        fastcgi_params;
            #}
     
            # deny access to .htaccess files, if Apache's document root
            # concurs with nginx's one
            #
            #location ~ /\.ht {
            #    deny  all;
            #}
        }
     
     
        # another virtual host using mix of IP-, name-, and port-based configuration
        #
        #server {
        #    listen       8000;
        #    listen       somename:8080;
        #    server_name  somename  alias  another.alias;
     
        #    location / {
        #        root   html;
        #        index  index.html index.htm;
        #    }
        #}
     
     
        # HTTPS server
        #
        #server {
        #    listen       443;
        #    server_name  localhost;
     
        #    ssl                  on;
        #    ssl_certificate      cert.pem;
        #    ssl_certificate_key  cert.key;
     
        #    ssl_session_timeout  5m;
     
        #    ssl_protocols  SSLv2 SSLv3 TLSv1;
        #    ssl_ciphers  HIGH:!aNULL:!MD5;
        #    ssl_prefer_server_ciphers   on;
     
        #    location / {
        #        root   html;
        #        index  index.html index.htm;
        #    }
        #}
     
    }


    Funfou de primeira!
    VAleu!



  3. Mas eu vou tentar depois o que você fez por último também, mas por hora tá resolvido.

    Como eu coloco um RESOLVIDO lá na entrada do meu tópico?

    Valeu mais uma vez.

  4. darkbr,

    Que bom que conseguiu resolver o nginx é um otimo servidor web e nós usamos ele aqui no portal under-linux.org

    Conforme pedido irei fechar o tópico já que você conseguiu resolver e postou a solução.

    Obrigado pela contribuição,






Tópicos Similares

  1. Respostas: 5
    Último Post: 31-08-2016, 14:07
  2. Respostas: 0
    Último Post: 01-11-2007, 16:06
  3. Respostas: 7
    Último Post: 05-04-2006, 15:45
  4. Como setar variaveis de ambiente no Red Hat 9.0?
    Por no fórum Servidores de Rede
    Respostas: 5
    Último Post: 21-11-2003, 12:34
  5. Como configuro as teclas de atalho do Linux???
    Por no fórum Linguagens de Programação
    Respostas: 0
    Último Post: 01-10-2003, 08:50

Visite: BR-Linux ·  VivaOLinux ·  Dicas-L