Nginx запустить php скрипт
- The basics of TOGAF certification and some ways to prepare TOGAF offers architects a chance to learn the principles behind implementing an enterprise-grade software architecture, including.
- Haskell vs. PureScript: The difference is complexity Haskell and PureScript each provide their own unique development advantages, so how should developers choose between these two .
- A quick intro to the MACH architecture strategy While not particularly prescriptive, alignment with a MACH architecture strategy can help software teams ensure application .
- Postman API platform will use Akita to tame rogue endpoints Akita’s discovery and observability will feed undocumented APIs into Postman’s design and testing framework to bring them into .
- How to make use of specification-based test techniques Specification-based techniques can play a role in efficient test coverage. Choosing the right techniques can ensure thorough .
- GitHub Copilot Chat aims to replace Googling for devs GitHub’s public beta of Copilot Chat rolls out GPT-4 integration that embeds a chat assistant into Visual Studio, but concerns .
- Explore the key features of Microsoft Defender for Cloud Apps Monitoring and visibility are crucial when it comes to cloud security. Explore Microsoft Defender for Cloud Apps, and see how .
- 4 popular machine learning certificates to get in 2023 AWS, Google, IBM and Microsoft offer machine learning certifications that can further your career. Learn what to expect from each.
- Rein in services to avoid wasted cloud spend Organizations often make the easy mistake of duplicate purchases, which lead to wasted cloud spend. Learn strategies to avoid .
- Security hygiene and posture management: A work in progress Security hygiene and posture management may be the bedrock of cybersecurity, but new research shows it is still decentralized and.
- How to avoid LinkedIn phishing attacks in the enterprise Organizations and users need to be vigilant about spotting LinkedIn phishing attacks by bad actors on the large business social .
- Thoma Bravo sells Imperva to Thales Group for $3.6B With the acquisition, Thales looks to expand its Digital Security and Identity business with an increased focus on protecting web.
- AWS Control Tower aims to simplify multi-account management Many organizations struggle to manage their vast collection of AWS accounts, but Control Tower can help. The service automates .
- Break down the Amazon EKS pricing model There are several important variables within the Amazon EKS pricing model. Dig into the numbers to ensure you deploy the service .
- Compare EKS vs. self-managed Kubernetes on AWS AWS users face a choice when deploying Kubernetes: run it themselves on EC2 or let Amazon do the heavy lifting with EKS. See .
Одминский блог
Вызов PHP кода в HTML документах на веб-севере NGINX
Иногда бывает необходимо запустить PHP код в HTML файлах. Особенно это актуально если торгуешь ссылочками в сапе или её ином аналоге.
В веб-сервере Apache это делается добавлением текстовой строки AddHandler в .htaccess
AddHandler application/x-httpd-php .php .htm .html
но к сожалению NGINX не понимает .htaccess и все настройки у него приходится производить через конфиг.
Поэтому придется немного подправить конфиг. За основу я взял конфиг из мануала по установке NGINX и PHP-FPM но нам от него интересна только часть описывающая работу PHP, поэтому я процитирую только её
##### vi /etc/nginx/conf.d/site.ru.conf
location ~ \.php$ include /etc/nginx/fastcgi_params;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
##########################################
собственно в ней мы и прописываем, что используем не только php, но и другие расширения файлов, приводя эту секцию к следующему виду
##### vi /etc/nginx/conf.d/site.ru.conf
location ~ \.(php|html|htm) include /etc/nginx/fastcgi_params;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index (index.html|index.php|index.htm);
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
##########################################
но помимо этого нам надо поменять директиву security.limit_extensions в файле /etc/php-fpm.d/www.conf поскольку она по умолчанию закомментирована и позволяет выполнять только php файлы. Для этого открываем файл конфига PHP-FPM и приводим строку к следующему виду:
security.limit_extensions = .php .php3 .php4 .php5 .html .htm
после чего рестартим оба сервиса
# service nginx restart
# service php-fpm restart
и видимо что у нас PHP код начинает корректно отрабатываться в виде вызовов из HTML файлов.
Nginx как запустить php скрипт от другого сайта на том же сервере?
Добрый день.
Есть VPS на Centos 7 + Nginx + Apache, на котором размещен сайт, назовем его site-a.com, появилась необходимость что бы содержимое папки site-a.com/uploads было зеркально доступно из другого домена site-b.com, но лишь эта папка а не весь сайт целиком. Тогда на этом же сервере припарковал домен site-b.com, и просто в корневом каталоге смонтировал каталог site-a.com/uploads.
mount --bind /home/admin/web/site-a.com/public_html/public/uploads /home/admin/web/site-b.com/public_html/uploads
И соответственно все содержимое https://site-a.com/uploads стало доступно и по адресу https://site-b.com/uploads. Все работает хорошо, все замечательно.
Однако сейчас, написал скрипт для автоматического создания миниатюр изображений, загруженных в каталог site-a.com/uploads. Для этого в Nginx добавил правило
Соответственно, при запросе файла, Nginx проверяет есть ли файл на диске и если его нет то передает запрос php скрипту https://site-a.com/thumbnail, который создает миниатюру и сохраняет ее в каталог https://site-a.com/uploads/thumbs, и соответственно при следующем запросе Nginx сразу отдаст миниатюру с диска без участия php скрипта. Работает хорошо, все замечательно.
Но вот теперь не могу сообразить как создание миниатюры подружить со вторым доменом, а точнее запуск php скрипта который создает миниатюру в случае ее отсутствия. Так как если миниатюра не создана то он выдает ошибку 404.