从零开始在linux下搭建wordpress博客
微博以及微信的公共平台现在正火的一塌糊涂。既然博客已经上线,准备把一些过程写一下,省的以后我自己忘了。就当留个纪念吧,好歹花了这么长时间。
全文的操作环境为debian。其他linux发行版区别不大。
没有vps的可以在电脑上装个linux虚拟机试试,都一样的。
- passwd
添加新用户
- adduser username
username改成你自己的。
- nano /etc/sudoers
找到User privilege specification,在下面插入一行
- username ALL=(ALL:ALL) ALL
cntrl+o 写入,cntrl+x退出,也可以直接cntrl+x退出,会提示是否保存修改,输入y保存,cntrl+c取消返回。若系统没安装sudo:
- apt-get update
- apt-get upgrade
- apt-get install sudo
修改SSH配置文件(谨慎操作)
ssh的配置文件默认应该在/etc/ssh/ssh_config,ssh默认使用的端口是22,个人认为使用默认端口是不大安全的。由于1024以下的端口是被linux系统占用的,所以我们改个1025到65536就好。打开配置文件
- nano /etc/ssh/sshd_config
找到port 22这一行,比如改为2222
- port 2222
禁止root账户远程连接:
- PermitRootLogin no
仅使用 SSH Protocol 2:
- Protocol 2
添加新用户 SSH 访问权限:
- AllowUsers username #多用户空格隔开,DenyUsers即禁止访问用户
加速SSH登入禁用UseDNS
- UseDNS no
保存退出,并重启ssh
- reload ssh
不要退出当前连接,用新建用户和端口登入,若无法登入,请检查ssh配置文件是否出错。
二,安装lnmp
- sudo apt-get install mysql-server
- sudo mysql_secure_installation
- sudo apt-get install nginx
- sudo apt-get install php5-fpm php5-mysql
- sudo service nginx start
- sudo killall apache2
- sudo update-rc.d -f apache2 remove
- include /etc/nginx/conf.d/*.conf;
- include /etc/nginx/sites-enabled/;
- sudo nano /etc/nginx/sites-enable/default
- root /usr/share/nginx/www;#网站根目录
- index index.php index.html index.htm;
- server_name your_IP_address;
- location ~ .php$ {
- fastcgi_split_path_info ^(.+.php)(/.+)$;
- # # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
- #
- # # With php5-cgi alone:
- # 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;
- }
- sudo service nginx restart
- sudo nano /usr/share/nginx/www/phpinfo.php
- <;?php phpinfo(); ?>;
- sudo apt-get install phpmyadmin
- sudo ln -s /usr/share/phpmyadmin/ /usr/share/nginx/www
- sudo service nginx reatsrt
- sudo cp /etc/nginx/sites-enable/default /etc/nginx/conf.d/example.conf
- wegt <a href="http://cn.wordpress.org/wordpress-3.8.1-zh_CN.tar.gz" target="_blank">http://cn.wordpress.org/wordpress-3.8.1-zh_CN.tar.gz</a>
- tar -zxvf wordpress*.gz
装过phpmyadmin的,此时只要进phpmyadmin页面创建一个名为wordpress的数据库就好,其他默认。否则,进mysql创建吧。进入mysql:
- mysql -u root -p
- create database wordpress;
- use wordpress;
- sudo chown www-data:www-data * -R
- sudo usermod -a -G www-data username
创建wordpress的nginx配置文件:
- sudo nano /etc/nginx/conf.d/wordpress.conf
- server {
- listen 80 ;#default_server;
- #listen [::]:80 default_server ipv6only=on;
- root 这里写网站根目录;
- index index.php index.html index.htm;
- # Make site accessible from http://localhost/
- server_name 127.0.0.10;#换成自己的域名或者IP
- location / {
- #try_files $uri $uri/ =404;
- 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/html;
- }
- location ~ \.php$ {
- fastcgi_split_path_info ^(.+\.php)(/.+)$;
- fastcgi_pass unix:/var/run/php5-fpm.sock;
- fastcgi_index index.php;
- include fastcgi_params;
- }
- }
- sudo cp /etc/nginx/sites-available/default /etc/nginx/conf.d/wordpress.conf
- location / {
- if (-f $request_filename/index.html){
- rewrite (.*) $1/index.html break;
- }
- if (-f $request_filename/index.php){
- rewrite (.*) $1/index.php;
- }
- if (!-f $request_filename){
- rewrite (.*) /index.php;
- }
- }
- rm /etc/nginx/sites-available/default/* /etc/nginx/sites-enabled/defaul/*
- sudo service nginx restart
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。