Nginx和php-fpm配置WordPress

在Ubuntu14.04下配置,debian系应该都差不多。

apt-get update

apt-get install -y nginx mysql-server php5-mysql php5-fpm

上面安装了所需要的软件,可能需要输入两次数据库的密码。

nano /etc/php5/fpm/php.ini

cgi.fix_pathinfo=0

在php.ini中找到上面的变量改为0,增强相对地址的安全性。

wget http://wordpress.org/latest.tar.gz

tar -xzvf latest.tar.gz

第一行下载最新版本的wp,然后解压缩,假设是在home目录下。

mysql -u root -p

CREATE DATABASE wordpress;
Query OK, 1 row affected (0.00 sec)

CREATE USER wordpressuser@localhost;
Query OK, 0 rows affected (0.00 sec)

SET PASSWORD FOR wordpressuser@localhost= PASSWORD(“password”);
Query OK, 0 rows affected (0.00 sec)

GRANT ALL PRIVILEGES ON wordpress.* TO wordpressuser@localhost IDENTIFIED BY ‘password’;
Query OK, 0 rows affected (0.00 sec)

FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

exit

上面的输入需要根据自己的需要修改几个变量,[wordpress]指的是数据库名,[wrodpressuser]指的是访问数据库的用户名,全小写的[password]指的是访问数据库的密码。

cp ~/wordpress/wp-config-sample.php ~/wordpress/wp-config.php

sudo nano ~/wordpress/wp-config.php

// ** MySQL settings – You can get this info from your web host ** //
/** The name of the database for WordPress */
define(‘DB_NAME’, ‘wordpress’);

/** MySQL database username */
define(‘DB_USER’, ‘wordpressuser’);

/** MySQL database password */
define(‘DB_PASSWORD’, ‘password’);

复制一份示例配置文件到网站目录,并根据之前的数据库设置修改。

sudo mkdir -p /var/www

sudo cp -r ~/wordpress/* /var/www

cd /var/www/

sudo chown www-data:www-data * -R
sudo usermod -a -G www-data username

 

把网站文件复制到www目录下并修改为www-data权限方便网站的运行。

sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/wordpress

sudo nano /etc/nginx/sites-available/wordpress

server {
listen 80;
root /var/www;
index index.php index.html index.htm;

server_name 192.34.59.214;

location / {
try_files $uri $uri/ /index.php?q=$uri&$args;
}

error_page 404 /404.html;

error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/www;
}

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
location ~ \.php$ {
try_files $uri =404;
#fastcgi_pass 127.0.0.1:9000;
# With php5-fpm:
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}

}

创建网站的配置文件,并写入配置,上面仅修改servername处把ip修改为域名即可。

sudo ln -s /etc/nginx/sites-available/wordpress /etc/nginx/sites-enabled/wordpress

sudo rm /etc/nginx/sites-enabled/default

sudo service nginx restart

sudo service php5-fpm restart

让服务开始工作,并删除nginx的示例网站。