Автор Тема: nginx и php  (Прочитано 2000 раз)

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 152
nginx и php
« : 12.07.2015 18:01:54 »
Всем привет.

Настроил nginx, конфиг (/etc/nginx/sites-enabled.d/mytest.conf):
server {
listen  80;
server_name localhost localhost.localdomain;

location / {
    root /var/www/mytest;
}

location ~ \.php$ {
    root /var/www/mytest;
    try_files $uri =404;
    include /etc/nginx/fastcgi_params;
    fastcgi_pass unix:/var/run/php5-fpm/php5-fpm.sock;
    fastcgi_param SCRIPT_FILENAME /var/www/mytest/$fastcgi_script_name;
}

location ~ /\.ht {
    deny all;
}

access_log  /var/log/nginx/access.log;
}
Далее проверяю:
# cat >> /var/www/html/index.php
<?php phpinfo(); ?>
В ответе получаю информацию о php, всё норм.

У меня тут есть поделка одна, делали на Денвер, хотелось бы её запустить. Но вместо информации из файлов *.php просто белый лист, в браузере в строке адреса прописан путь до файла. Файл лежит в корне mytest. Значит в строке так:
http://192.168.1.1/myfile.php
Также выполнил:
chown _nginx: -R /var/www/mytest
service nginx start && service php5-fpm start

Потом решил сделать через apache2, но там после настройки все *.php просто как в блокноте на странице отображаются.

Помогите, пожалуйста.
Сноси Винду, переходи на Линукс ! :)

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 361
  • Учиться .... Телепатами не рождаются, ими ....
Re: nginx и php
« Ответ #1 : 12.07.2015 18:06:48 »
но там после настройки все *.php просто как в блокноте на странице отображаются.

поизите в рассылках, такое уже было. Помню, что надо в конфиге что-то включить, но что, и где не помню :(

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 152
Re: nginx и php
« Ответ #2 : 12.07.2015 18:09:47 »
Сейчас поищу, спасибо.

А с nginx почему так ? Ведь главное справку кажет, а другие файлы нет...
Сноси Винду, переходи на Линукс ! :)

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 152
Сноси Винду, переходи на Линукс ! :)

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 152
Re: nginx и php
« Ответ #4 : 12.07.2015 18:18:40 »
Сейчас создал файл:
# cat > 1.php
<? echo("Hello!"); ?>
Тоже всё норм. Похоже в "поделке" дело...
Сноси Винду, переходи на Линукс ! :)

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 152
Re: nginx и php
« Ответ #5 : 12.07.2015 18:21:15 »
У меня в ответ на
control | grep phpтишина...
Сноси Винду, переходи на Линукс ! :)

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 361
  • Учиться .... Телепатами не рождаются, ими ....
Re: nginx и php
« Ответ #6 : 12.07.2015 18:50:46 »
Ну, за это время всё могло поменться.
Надо посмотреть, каккие пакеты сейчас за php отвечают, и есть-ли у них control.

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 152
Re: nginx и php
« Ответ #7 : 12.07.2015 20:32:34 »
Как-то может влиять на открываемость, мой файл:
$ file 1.php
1.php: ASCII text
и тот, который не открывается:
$ file start.php
start.php: UTF-8 Unicode (with BOM) C++ program text, with CRLF line terminators
?
Сноси Винду, переходи на Линукс ! :)

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 152
Re: nginx и php
« Ответ #8 : 12.07.2015 22:19:14 »
Для apache2 значит:
apt-get install apache2-mod_php5
a2enmod mod_php5
service htppd2 restart

Ну также, белые страницы кажет, а на
# cat > 1.php
<? echo("Hello!"); ?>
# cat >> /var/www/html/index.php
<?php phpinfo(); ?>
прекрасно отзывается...
Сноси Винду, переходи на Линукс ! :)

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 361
  • Учиться .... Телепатами не рождаются, ими ....
Re: nginx и php
« Ответ #9 : 12.07.2015 22:24:51 »
А если что-то с заголовком и указанием кодировки?

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 152
Re: nginx и php
« Ответ #10 : 12.07.2015 22:41:58 »
А если что-то с заголовком и указанием кодировки?
Вот такая ошибка в /var/log/httpd2/access_log при доступе к проблемному файлу:
192.168.1.33 - - [13/Jul/2015:00:40:33 +0500] "GET /start.php HTTP/1.1" 500 3
Сноси Винду, переходи на Линукс ! :)

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 152
Re: nginx и php
« Ответ #11 : 12.07.2015 22:43:55 »
А если что-то с заголовком и указанием кодировки?
Вот я как раз смотрю на логи и вижу на 11 строчку ругается, а там это:
mb_internal_encoding("UTF-8");убрал -- сразу поехало.
Дальше смотрю...
Сноси Винду, переходи на Линукс ! :)

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 152
Re: nginx и php
« Ответ #12 : 13.07.2015 11:05:37 »
Всем привет.

Подскажите, мне нужно чтобы виртуальный хост запускался от имени другого пользователя, не apache2.
Делаю так http://rx-support.net/article/printer/apache2-mpm-itk-debian.html
Но всё равно apache2.
Установил:
# apt-get install apache2-httpd-itkВот конфиги:
# cat /etc/httpd2/conf/sites-available/default.conf
<VirtualHost *>
ServerAdmin webmasterr@localhost
DocumentRoot "/var/www/mytest"
<Directory />
Include conf/include/Directory_root_default.conf
</Directory>
<Directory "/var/www/mytest">
Include conf/include/Directory_html_default.conf
</Directory>
ErrorLog /var/log/httpd2/error_log
LogLevel warn
<IfModule log_config_module>
CustomLog /var/log/httpd2/access_log common
</IfModule>
<IfModule alias_module>
ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
</IfModule>
<IfModule mpm_itk_module>
AssignUserId _transmission-daemon _transmission-daemon
</IfModule>
<Directory "/var/www/cgi-bin">
Include conf/include/Directory_cgibin_default.conf
</Directory>
</VirtualHost>
Сноси Винду, переходи на Линукс ! :)

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 361
  • Учиться .... Телепатами не рождаются, ими ....
Re: nginx и php
« Ответ #13 : 13.07.2015 12:52:43 »
apache2-httpd-peruser ?

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 152
Re: nginx и php
« Ответ #14 : 13.07.2015 13:03:32 »
apache2-httpd-peruser ?
Похоже я неправильно в конфиге пишу... так не получается.
Вот так работает:
# egrep '(User|Group)' /etc/httpd2/conf/httpd2.conf
# User/Group: The name (or #number) of the user/group to run httpd as.
User apache2
Group apache2
#User _transmission-daemon
#Group _transmission-daemon
Сноси Винду, переходи на Линукс ! :)