當前位置:首頁 » 編程語言 » phplinuxnginx

phplinuxnginx

發布時間: 2023-04-20 02:59:43

linux yum安裝nginx和php後怎樣配置

# yum remove httpd* php*

增加額外資源庫

默認情況下,CentOS的官方資源是沒有php-fpm的, 但我們可以從Remi的RPM資源中獲得,它依賴於EPEL資源。我們可以這樣增加兩個資源庫:

[plain] view plain
# yum install yum-priorities -y
# rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-7.noarch.rpm
# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm

❷ linux下怎麼讓nginx支持php

安裝 PHP-FPM

1. 開始安裝 Nginx 和 PHP-FPM 之前,你可能需要卸載系統中以前安裝的 Apache 和 PHP。

1
yum erase php*
2
or
3
yum remove httpd* php* #這個命令是刪除不幹凈的
4
yum remove php-cli php-common php #刪除
重新安裝 PHP:

1
yum --skip-broken install php53
2. CentOS 6.2/6.1/6/5.8 下安裝Remi源:

1
## Remi Dependency on CentOS 5 and Red Hat (RHEL) 5 ##
2
rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
3

4
## CentOS 5 and Red Hat (RHEL) 5 ##
5
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-5.rpm
3. 安裝 PHP-FPM:

1
yum --enablerepo=remi,remi-test install nginx php php-fpm php-common
2
or
3
yum --enablerepo=remi install php53 php-fpm
4. 安裝完畢之後啟動 PHP-FPM:

1
/etc/init.d/php-fpm start
2
## OR ##
3
service php-fpm start
5. 設置Nginx & PHP-FPM開機自啟動:

1
chkconfig --add nginx
2
chkconfig --levels 235 nginx on
3
chkconfig --add php-fpm

❸ 如何確定 linux 內的 php nginx mysql 進程是否運轉正常

1. php 的測試:

使用 yum 命令安裝 php

yum install php*

然後瀏覽器訪問伺服器 IP:

❹ LINUX+NGINX下的PHP shell_exec()函數執行linux命令 2019-08-08

LINUX+NGINX下的PHP shell_exec()函數執行linux命令

環境說明

手燃衫頭有一台linux的測試伺服器,最近因為業務需要,需要通過php訪問另一台伺服器去執行某些命令。

由於另一台伺服器已經對這台伺服器開了私鑰,所以在終端上是可以直接執行命令而不需要輸入密碼的。

問題

PHP無法使用exec命令,沒有任何返回值。

解決途徑

1.php.ini的配置有問題。

由於php是7.0以上的版本,取消了安全模式,所以考慮PHP.ini文件配置。

打開php配置文件,裡面有一行disabel_function的值,此處記錄了禁止運行的函數,在裡面講exec和shell_exec,system等函數刪除。

2.許可權問題

修改以後PHP可以運行部分命令了,但是部分外部程序和命令仍然不能運行。使用sudo返回失敗。

於是運行「whoami」查看,環境下php-frm的運行角色鎮段唯是www。

於是修改sudoers文件。

vi /etc/sudoers

將www添加到

## Allow root to run any commands anywhere

root ALL=(ALL) ALL

下面:

## Allow root to run any commands anywhere

root ALL=(ALL) ALL

www ALL=(ALL) NOPASSWD:ALL

然後找到Default requiretty這一行,把他注釋掉

# Default requiretty

ps:意思就是sudo默認需要tty終端,注釋掉就可以在後台執行了.

重啟nginx和php-fpm

service nginx restart

service php-fpm restart

這樣,PHP就可以在需要御培執行外部命令的時候使用sudo利用root身份執行命令,而不會報錯或者執行失敗了!

❺ 如何在linux下配置nginx支持php

需要。
如果是nginx+php配置,也可以通過查找php執行路徑
ps
aux
|
grep
php
如,路徑為
/usr/local/nginx/sbin/php-fpm
然後執行以下命令
/usr/local/nginx/sbin/php-fpm
-i
|
grep
「Loaded
Configuration
File」
即可看到php載入的配置文件

❻ 如何在Linux下使Nginx和Apache共存,並同時支持PHP

1、mysql,參考linux下源碼安裝mysql

2、php,參考linux下源碼安裝nginx + php筆錄

編譯參數:./configure --prefix=/usr/local/php --with-gd --enable-gd-native-ttf --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-mysql=/usr/local/mysql --enable-fastcgi --enable-fpm --with-mysqli=/usr/local/mysql/bin/mysql_config

3、nginx,參考linux下源碼安裝nginx + php筆錄

4、apache,

編譯參數:./cigure --prefix=/usr/local/apache2 --enable-so --enable-mods-shared=most

查看以前的編譯選項(如果以前安裝過的話):cat /usr/local/apache2/build/config.nice

http.conf添加以下兩行
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

虛擬主機設置:

<VirtualHost 192.168.42.129>
ServerAdmin [email protected]
DocumentRoot /var/www/other-test
ServerName other-test.com
ErrorLog logs/www.other-test.com-error_log
CustomLog logs/www.other-test.com-access_log common
<Directory "/var/www/other-test">
Options Indexes FollowSymlinks MultiViews
AllowOverride None
DirectoryIndex index.html index.php
Order allow,deny
Allow from All
</Directory>
</VirtualHost>

5、重新編譯、安裝php是能夠在apache上運行,編譯參數:./configure --prefix=/usr/local/php --with-gd --enable-gd-native-ttf --with-freetype-dir --with-jpeg-dir --with-png-dir --with-mysql=/usr/local/mysql --with-zlib --enable-fastcgi --enable-fpm --with-apxs2=/usr/local/apache2/bin/apxs --with-mysqli=/usr/local/mysql/bin/mysql_config

cp php.ini-dist /usr/local/php/lib/php.ini

重啟apache,如果發現正斗錯誤「cannot restore segment prot after reloc: Permission denied」解決方案舉判磨:

1. chcon -t /usr/local/apache2/moles/libphp5.so
2. #vi /etc/sysconfig/selinux file 或者用 #gedit /etc/沖唯sysconfig/selinux file 修改SELINUX=disabled 重啟

❼ 一台機linux器裝nginx一台裝PHP,怎麼能夠用nginx訪問php頁面

nginx通過fastcgi模式調用另一台的php解釋器,然後將php程序執行後的結果傳給nginx,nginx再輸出就可以了

❽ linux怎麼快速安裝nginx和php,不用安裝資料庫

Linux下如果要搭建nginx和php環境,需要安裝三個軟體包:

nginx,php,php-fpm

比如說如果是centos的話:

yuminstallnginxphpphp-fpm

可能軟體包名有差別,這個查查就知道了。

然後配置nginx,修改nginx.conf,如果用sock就這樣寫,如果是埠就些埠:

location~.php${
fastcgi_passunix:/var/run/php-fpm/php-fpm.sock;
fastcgi_indexindex.php;
includefastcgi.conf;
}

然後啟動服務,以centos7為例:

systemctlstartnginx
systemctlstartphp-fpm

❾ Linux系統中設置多版本PHP共存配合Nginx伺服器使用

應用環境
LNMP的環境,當前PHP版本5.3.8,遇到一個應用需求只支持PHP
5.2.x,又希望保持現有應用還是用PHP
5.3.8。也就是說需要兩個版本的PHP同時存在,供nginx根據需要調用不同版本。
思路
Nginx是通過PHP-FastCGI與PHP交互的。而PHP-FastCGI運行後會通過文件、或本地埠兩種方式進行監聽,在Nginx中配置相應的FastCGI監聽埠或文件即實現Nginx請求對PHP的解釋。
既然PHP-FastCGI是監聽埠和文件的,那就可以讓不同版本的PHP-FastCGI同時運行,監聽不同的埠或文件,Nginx中根據需求配置調用不同的PHP-FastCGI埠或文件,即可實現不同版本PHP共存了。
配置記錄
下面記錄簡單的配置流程,基於已經安裝了lnmp的debian環境。當前版本的PHP是5.3.8,位於/usr/local/php。
1.下載PHP-5.2.14及相關的FPM、autoconf組件:
mkdir
~/php5.2
cd
~/php5.2
wget
-c
http://museum.php.net/php5/php-5.2.14.tar.gz
wget
-c
http://php-fpm.org/downloads/php-5.2.14-fpm-0.5.14.diff.gz
2.解壓PHP-5.2.14,並打上PHP-FPM的補丁:
tar
zxvf
php-5.2.14.tar.gz
gzip
-cd
php-5.2.14-fpm-0.5.14.diff.gz
|
patch
-d
php-5.2.14
-p1
3.如果你已經通過lnmp安裝,應該已經安裝好了autoconf,如果沒有,請自行下載並編譯autoconf-2.13,然後設置autoconf環境變數:
export
PHP_AUTOCONF=/usr/local/autoconf-2.13/bin/autoconf¬
export
PHP_AUTOHEADER=/usr/local/autoconf-2.13/bin/autoheader
3.編譯安裝PHP-5.2.14在新的路徑(/usr/local/php-5.2.14)下,注意–prefix、–with-config-file-path的路徑,並且打開fastcgi和fpm選項:
cd
php-5.2.14/
./buildconf
--force
./configure
--prefix=/usr/local/php-5.2.14
--with-config-file-path=/usr/local/php-5.2.14/etc
--with-mysql=/usr/local/mysql
--with-mysqli=/usr/local/mysql/bin/mysql_config
--enable-fastcgi
--enable-fpm
make
ZEND_EXTRA_LIBS='-liconv'
make
install
4.設置/usr/local/php-5.2.14/etc/php-fpm.conf,監聽埠:
<value
name="listen_address">127.0.0.1:9001</value>
或者監聽文件:
<value
name="listen_address">/path/to/unix/socket</value>
其他參數根據伺服器環境和需求自行定製。
5.啟動php-fpm,以後可以通過php-fpm進行管理:
/usr/local/php-5.2.14/sbin/php-fpm
start
字php5.3.3後,php已經將php-fpm繼承到php中,而且內置的php-fpm默認不支持(start|stop|reload)的平滑啟動參數,需要使用官方源代碼中提供的啟動腳本來控制:
cp
-f
(php
-5.3.x-source-dir)/sapi/fpm/init.d.php-fpm
/etc/init.d/php-fpm
chmod
755
/etc/init.d/php-fpm
/etc/init.d/php-fpm
start
php-fpm支持的操作:
start,啟動PHP的FastCGI進程。
stop,強制終止PHP的FastCGI進程。
quit,平滑終止PHP的FastCGI進程。
restart,
重啟PHP的FastCGI進程。
reload,
重新載入PHP的php.ini。
logrotate,
重新啟用log文件。
5.3.3的php-fpm腳本支持的操作:start|stop|force-quit|restart|reload|status
6.配置好PHP-5.2.14的php.ini,重新載入生效:
vi
/usr/local/php-5.2.14/etc/php.ini
/usr/local/php-5.2.14/sbin/php-fpm
reload
7.修改nginx配置,對需要的服務配置使用PHP-5.2.14:
location
~
.*.(php|php5)?$
{
fastcgi_pass
127.0.0.1:9001;
fastcgi_index
index.php;
include
fcgi.conf;
}
8.記錄一下自己編譯php5.5.10使用的配置
./configure
--prefix=/usr/local/php-5.5.10
--with-config-file-path=/usr/local/php-5.5.10/etc
--with-mysql=mysqlnd
--with-mysqli=mysqlnd
--with-bz2
--with-curl=/usr/bin
--enable-ftp
--enable-sockets
--disable-ipv6
--with-gd
--with-jpeg-dir=/usr/local
--with-png-dir=/usr/local
--with-freetype-dir=/usr/local
--enable-gd-native-ttf
--with-iconv-dir=/usr/local
--enable-mbstring
--enable-calendar
--with-gettext
--with-libxml-dir=/usr/local
--with-zlib
--with-pdo-mysql=mysqlnd
--enable-dom
--enable-xml
--enable-fpm
--with-libdir=lib64
--with-mcrypt=/usr/bin
--enable-zip
--enable-soap
--enable-mbstring
--with-gd
--with-openssl
--enable-pcntl
--with-xmlrpc
--enable-opcache

❿ linux nginx 無法執行php文件

為以前沒有接觸過nginx ,所以查了一天,查處原因有二:
一、網站根目錄
默認是在 /usr/local/nginx/html文件
配置在
location / {
root /home/www/wwwroot;
index index.html index.htm;
}

二、修改文件中對應的php配置部分
location ~ \.php$ {
root /home/www/wwwroot;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
特別需要注意的是:fastcgi_param這個參數默認的是$fastcgi_script_name;最好改為$document_root$fastcgi_script_name;我在實際配置中出現了php找不到需要解析文件而返回404或者500錯誤的問題。所以最好是帶上網站根目錄的路徑變數$document_root

熱點內容
華為ftp在哪 發布:2024-11-01 22:36:33 瀏覽:288
java數組包含字元串 發布:2024-11-01 22:31:15 瀏覽:791
伺服器和家用電腦質量 發布:2024-11-01 22:28:29 瀏覽:488
sqlserver默認實例 發布:2024-11-01 22:23:42 瀏覽:959
sort排序java 發布:2024-11-01 22:23:26 瀏覽:47
解壓後的apk無法安裝 發布:2024-11-01 22:22:10 瀏覽:666
公司的pop伺服器地址 發布:2024-11-01 22:22:07 瀏覽:119
朵唯m30手機配置是真的嗎如何 發布:2024-11-01 22:16:56 瀏覽:681
夢幻西遊怎麼清理緩存 發布:2024-11-01 22:15:52 瀏覽:345
如何配置fcm 發布:2024-11-01 22:08:15 瀏覽:854