ubuntu11.04 バージョン。次の手順は、2 日前に行ったインストールに基づいており、その後、純粋な新しい ubuntu に再度インストールしました
手順はすべて正しいので、戻って操作を繰り返す必要がないように、友人が操作してくれると幸いです。
?
1. インストール前の準備
php-5.4.13.tar.gz の最新バージョンをダウンロードし、/user/src ディレクトリに置きます
?
2. インストール
???php のインストールの過程では、多くのライブラリのインストールに依存するため、繰り返しインストールすることを防ぐために、
の手順に従うことをお勧めします。??? autoconf ツールをインストールします
apt-get install autoconf
???libxml2 ライブラリをインストールします
apt-get install libxml2-dev
??? libbz2-dev をインストールします
apt-get install libbz2-dev
???curl をインストールします
apt-get install libcurl4-gnutls-dev
???jpeglib をインストールします
apt-get install libjpeg-dev
???png をインストールします
apt-get install libpng-dev
をインストールしますか?
apt-get install libxpm-dev
apt-get install libfreetype6-dev
apt-get install libt1-dev
apt-get install libmcrypt-dev
をインストールします
apt-get install libxslt1-dev
??? 上記の手順に従ってインストールすると、少なくとも 20 分、またはエラーが解決しない場合はさらにそれ以上の時間を節約できます。
のプロンプトに従ってインストールしてください。
??? 最後に、解凍された php オリジナル ファイル パッケージ /usr/src/php-5.4.13 ディレクトリにあるインストール コマンドを実行します。
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-curl --with-pear --with-gd - -with-jpeg-dir --with-png-dir --with-zlib --with-xpm-dir --with-freetype-dir --with-t1lib --with-mcrypt --with-mhash --with -mysql --with-mysqli --enable-pdo --with-pdo-mysql --with-openssl --with-xmlrpc --with-xsl --with-gettext --with-fpm-user=www-data --with-fpm-group=www-data --enable-fpm --enable-exif --enable-wddx --enable-zip --enable-bcmath -with-bz2 --enable-calendar --enable-ftp --enable-mbstring --enable-soap --enable-sockets --enable-shmop --enable-dba --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-debug --enable-maintainer -zts --enable-embed?
3. PHP を設定します
???php のインストールディレクトリを PATHに追加します
echo 'if [ -d "/usr/local/php/bin" ] && [ -d "/usr/local/php/sbin" ]; then PATH="$PATH:/usr/local/php/bin:/usr/local/php/sbin" fi' >> /etc/bash.bashrc
に追加されます
export PATH="$PATH:/usr/local/php/bin:/usr/local/php/sbin"
mkdir /var/log/php-fpm chown -R www:www /var/log/php-fpm
cd /usr/src/php-5.4.13 cp -f php.ini-production /usr/local/php/etc/php.ini <span><span class="func">chmod</span><span>?644?/usr/local/php/etc/php.ini</span></span> <span><span>cp?/usr/local/php/etc/php-fpm.conf.</span><span class="keyword">default</span><span>?/usr/local/php/etc/php-fpm.conf </span></span>
????????? php-fpm の設定ファイルは /usr/local/php/etc/php-fpm.conf にあります。
?
??? php-fpm 起動管理ファイルを設定し、ubuntu の起動時に PHP が自動的に実行されるようにします
cp -f sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm chmod 755 /etc/init.d/php-fpm update-rc.d -f php-fpm defaults
vi /etc/logrotate.d/php-fpm 输入一下内容: /var/log/php-fpm/*.log { weekly missingok rotate 52 compress delaycompress notifempty create 640 www www sharedscripts postrotate [ ! -f /usr/local/php /var/run/php-fpm.pid ] || kill -USR1 `cat /usr/local/php/ /var/run/php-fpm.pid` endscript }
4.
php-fpm と nginx を構成します
??? php-fpm 設定ファイルを開きます
<strong>vi /usr/local/php/etc/php-fpm.conf</strong>
pid = run/php-fpm.pid //これは、前のコメントを削除することで行う必要があります (最初に削除されていない場合は、502 エラーが発生します)
log_level = Notice
;emergency_restart_threshold = 0
;emergency_restart_interval = 0
;process_control_timeout = 0
;daemonize = yes
[www]
;prefix = /path/ to/pools/$pool
listen = 127.0.0.1:9000
; listen.backlog = -1
listen.allowed_clients = 127.0.0.1
listen.owner = www
listen.group = www
リッスン .mode = 0666
ユーザー = www
グループ = www
pm = 動的
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 5
午後 .max_spare_servers = 35
午後.max_requests = 500
次に nginx を設定します
vi /usr/local/nginx/conf/nginx.conf
worker_processes 2;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events
{
use epoll;
worker_connections 1024;
}
http
{
include mime.types;
default_type application/octet-stream;
#charset gb2312;
server_names_hash_bucket_size 128;
client_header_buffer_size 32k;
large_client_header_buffers 4 32k;
client_max_body_size 8M;
sendfile on;
tcp_nopush on;
keepalive_timeout 60;
tcp_nodelay on;
fastcgi_connect_timeout 300s;
fastcgi_send_timeout 300s;
fastcgi_read_timeout 300s;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64k;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 128k;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.0;
gzip_comp_level 2;
gzip_types text/plain application/x-javascript text/css application/xml;
gzip_vary on;
#limit_zone crawler $binary_remote_addr 10m;
server
{
listen 80; #/*监听端口*/
server_name localhost; #/*服务器名称*/
index index.html index.htm index.php; #/*缺省主页名称*/
root /var/www; #/*网站根目录,也可以采用下面内容*/
#也可以采用相对路径,下面注释部分*/
#location / {
# root html;
# index index.html index.htm;
# }
#limit_conn crawler 20;
#通过FastCGI方式支持PHP,php页面由fastcgi代理处理,这也是反向代理的一个应用,这里可以是jsp/asp等脚本。
location ~ .*\.(php|php5)?$
{
include /etc/nginx/fastcgi_params;#为FastCGI模块设置了基本的环境变量
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/$fastcgi_script_name;
#include fcgi.conf; #/*fastcgi配置文件,修改为以下内容*/
}
#对于某一类型的文件,设置过期时间,静态的页面通常设置长一点。
#静态文件,nginx自己处理
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|js|css)$
{
expires 30d;
}
#日志的格式
log_format access '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" $http_x_forwarded_for';
access_log /var/log/nginx/access.log access;
}
}
??? 保存退出,重启fpm和nginx
/etc/init.d/php-fpm restart /etc/init.d/nginx restart
??? 安装完成!!!
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31