nginx-0.4.5
Andrew Kopeyko
kaa at zvuki.ru
Tue Oct 3 10:19:28 MSD 2006
On Tue, 3 Oct 2006 raduga at lan.com.ua wrote:
> Здравствуйте, All.
>
> Проблема с php!
>
> php установлен как mod-php
>
> Все на одном сервере. Апач слушает 81 порт
>
> обращаюсь к 80 порту
>
> html и другая статика отлично отображается.
> Только пытаюсь загрузить php -
> браузер предлагает сохранить файл с именем домена - тип неизвестен.
>
> обращаюсь к этому же файлу на порту 81
> предлагает сохранить данный php
>
> Помогите плиз!
Судя по симптомам, у вашего Апача проблема с определением mime-типа
Наверное, дело в том, что в конфиге вашего nginx написано что, обращаясь к
Апачу, не нужно передавать ему заголовок 'Host: ' - и Апач отвечает своим
дефолтным виртуальным хостом, в котором php не обрабатывается.
Ручками сходите на ваш Апач с запросом
HEAD /my-favourite-script.php
с добавлением заголовка
Host: www1.com.ua
и без него - и посмотрите разницу в ответах.
> Конфиг nginx:
> --------------------
> user www1 psacln;
> 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 conf/mime.types;
> default_type application/x-httpd-php;
> #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;
> tcp_nodelay on;
>
> #gzip on;
>
> server {
> listen 80;
> server_name localhost;
>
> #charset koi8-r;
>
> #access_log logs/host.access.log main;
>
> location / {
> root /var/www/vhosts/www1/httpdocs;
> index index.php;
> }
>
> #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:81
> #
> location ~ \.php$ {
> proxy_pass http://www1.com.ua:81;
> }
>
> # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
> #
> #location ~ \.php$ {
> # fastcgi_pass 127.0.0.1:9000;
> # fastcgi_index index.php;
> # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
> # include conf/fastcgi_params;
> #}
Если эти строки закомментированы в конфиге - зачем их слать?
Пожалейте место на наших винтах.
> --------------------
>
> В mime.types добавлен
> application/x-httpd-php php;
>
> Без добавления в mime тоже самое.
Поскольку nginx проксирует *.php на Апач - шаманство с его файлом
mime.types ничего не даст.
--
Best regards,
Andrew Kopeyko <kaa at zvuki.ru>
http://www.zvuki.ru/ sysadmin
More information about the nginx-ru
mailing list