Comments 31
Если решение не ново, прошу сильно ногами не бить, писал из добрых побуждений, думаю кому-то пригодиться.
location / {
root /usr/local/www/wowmate.ru/;
}
location ~ \.php$ {
proxy_pass httр://127.0.0.1/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr
}
расширения php добавить по своему вкусу. это намного проще, чем писать отрицание )
root /usr/local/www/wowmate.ru/;
}
location ~ \.php$ {
proxy_pass httр://127.0.0.1/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr
}
расширения php добавить по своему вкусу. это намного проще, чем писать отрицание )
У меня так не заработало: [emerg]: «proxy_pass» may not have URI part in location given by regular expression
так заработало все, кроме корня сайта: 403 Forbidden
include…
Вынести в отдельный файл и подключать include-ом, например.
Основной конфиг:
location / {
root /usr/local/www/one.example.com/;
index index.php;
}
include php.conf;
Файл php.conf (лежит в корне папки с конфигами nginx):
location ~ \.php$ {
proxy_pass httр://127.0.0.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr
}
Основной конфиг:
location / {
root /usr/local/www/one.example.com/;
index index.php;
}
include php.conf;
Файл php.conf (лежит в корне папки с конфигами nginx):
location ~ \.php$ {
proxy_pass httр://127.0.0.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr
}
Хабр, как низко ты пал…
[:::] по мойму (в плане темы).
См. www.google.ru/search?hl=ru&rlz=1C1GGLS_ruRU291RU305&newwindow=1&q=apache+nginx+site:habrahabr.ru+inurl:/blogs/&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA&lr=&aq=f&oq=
См. www.google.ru/search?hl=ru&rlz=1C1GGLS_ruRU291RU305&newwindow=1&q=apache+nginx+site:habrahabr.ru+inurl:/blogs/&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA&lr=&aq=f&oq=
Хотя версия конфига тов. lomik`а весьма удачна.
вобще глупо это — только файлы с расширением *.php
*.phps тоже должны отдаваться не нгинксом
да и впринципе допустим у меня урлы на сайте большинство в виде /about/me — не отдавать же их апачем
я помнится в ноябре тупил и пытался найти идеальное решение (как и автор топика) для нгинкса, дабы описать все, что не кончается на «php»
решение было совсем не тривиальным — www.staypositive.ru/blog/2009/11/19/regular-fuckin
но к слову — глупости все это (как оказалоь потом)
*.phps тоже должны отдаваться не нгинксом
да и впринципе допустим у меня урлы на сайте большинство в виде /about/me — не отдавать же их апачем
я помнится в ноябре тупил и пытался найти идеальное решение (как и автор топика) для нгинкса, дабы описать все, что не кончается на «php»
решение было совсем не тривиальным — www.staypositive.ru/blog/2009/11/19/regular-fuckin
но к слову — глупости все это (как оказалоь потом)
У автора phps тоже уходит на апач. Только php у меня — это просто иллюстрация как можно сделать без отрицающих регекспов. Можете заменить \.php на \.(php|phps) — это на любителя.
А что не так с /about/me? Он не улетит на апач.
А что не так с /about/me? Он не улетит на апач.
/about/me как раз таки в случае конфига автора топика улетит на апач
а вот /about/me/ — не улетит
а вот /about/me/ — не улетит
Вот-вот, не улетит! А вот интересно было бы сделать такую же штуку, только с перламутровыми пуподдержкой пресловутого ЧПУ, например.
Перепечатывать и форматировать лень. Конфиг из виртуальной машины для тестов:
clip2net.com/clip/m12120/1265929129-clip-6kb.png
и php.conf (аналог для fastcgi только)
clip2net.com/clip/m12120/1265929242-clip-9kb.png
If в основном конфиге именно для ЧПУ конкретного проекта.
Пример с другого проекта:
clip2net.com/clip/m12120/1265929546-clip-5kb.png
clip2net.com/clip/m12120/1265929129-clip-6kb.png
и php.conf (аналог для fastcgi только)
clip2net.com/clip/m12120/1265929242-clip-9kb.png
If в основном конфиге именно для ЧПУ конкретного проекта.
Пример с другого проекта:
clip2net.com/clip/m12120/1265929546-clip-5kb.png
А подскажите что надо сделать чтобы именно записи вида "/about/me" улетали на апач? У меня в корне нет индексных файлов и всё разгребает htaccess, решая какому скрипту отдать запрос.
Наверное я скажу глупость, но зачем вам apache, когда есть php-fpm?
На всех своих проектах используется связка nginx + php-fpm, при этом никаких проксирующих серверов больше не используется. :)
На всех своих проектах используется связка nginx + php-fpm, при этом никаких проксирующих серверов больше не используется. :)
OMG. жду завтра статьи про то как: настраиваем вэб сервер на убунте, так чтобы все запросы по части php обрабатывал apache!!!!111
нет, вы это серьезно?
нет, вы это серьезно?
мне кажется более удачным решением будет всю статику отдавать вообще отдельным хостом (типа static.example.com) или по отдельному урлу (типа example.com/media/)
в первом случае нужно завести новый virtual host, во втором конфиг будет выглядеть примерно так
в первом случае нужно завести новый virtual host, во втором конфиг будет выглядеть примерно так
location / {
proxy_pass 127.0.0.1:8080/;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location /media/ {
root /usr/local/www/one.example.com/;
access_log off;
expires max;
add_header Last-Modified: $date_gmt;
}
+ от меня
Sign up to leave a comment.
Связка Nginx+Apache, как отдавать Apache только запросы к PHP?