网站开发及wordpress配置

网站安装及配置

网站网址:www.uoeai.com

服务器:阿里云服务器ECS www.aliyun.com

网站架构:Apache+MySQL+wordpress

远程连接工具:Xterminal免费版

数据库连接工具:MySQLWorkbench

网站域名直接打开首页:把wordpress安装在根目录

为了让www.uoeai.com域名直接能打开网站首页,最直接的方式就是将wordpress安装在根目录,即/var/www/html目录下,而不是在/var/www/html/wordpress目录下。

域名申请下来后,如何将原来的IP地址更换为新域名?

一般来说,服务器申请下来之后,可以先进行网站开发工作,后续再将开发好的网站配置上新申请的域名,当然域名需要在阿里云进行DNS域名解析、IPC备案,以及全国互联网安全管理服务平台进行备案。下面介绍将原有IP地址登录更换为域名登录的步骤:

  1. 前期准备工作:建议在更换域名之前,对网站文件及数据库进行备份,防止因错误设置而导致网站无法登录。
  2. WordPress后台配置:登录wordpress后台,进入设置-常规菜单,在WordPress 地址(URL)和站点地址(URL)中输入新的域名:www.uoeai.com.
  3. 修改wp-config.php配置文件:使用Xterminal远程登录服务器,打开/var/www/html/wp-config.php文件,在最后增加两行:
    • define('WP_HOME','http://www.uoeai.com');
    • define('WP_SITEURL','http://www.uoeai.com');
  4. 更新数据库:除了在配置文件中,网站的很多配置也存在数据库中,因此需要更新数据库相关表。
SET SQL_SAFE_UPDATES=0;

UPDATE  wordpress.wp_options SET option_value = replace(option_value, 'http://47.94.138.131/wordpress', 'http://www.uoeai.com') WHERE option_name = 'home' OR option_name = 'siteurl';

UPDATE wordpress.wp_posts SET guid = replace(guid, 'http://47.94.138.131/wordpress','http://www.uoeai.com') ;

UPDATE wordpress.wp_posts SET post_content = replace(post_content, 'http://47.94.138.131/wordpress','http://www.uoeai.com');

UPDATE wordpress.wp_postmeta SET meta_value = replace(meta_value,'http://47.94.138.131/wordpress','http://www.uoeai.com');
  1. 其他路径修改:在网站中,可能还会有其他链接设置的相对路径,需要有针对性的修改,比如将/wordpress修改为/。

http转https,SSL证书申请和配置。

为了使网站访问变的更加安全,需要https协议访问网站,以下配置非常重要,在wp-config.php文件中将网址配置为https协议。或者进入到后台配置界面,修改相关配置(注:配置文件中以硬编码方式编写的内容,在后台配置页面无法修改)。

define('WP_HOME', 'https://www.uoeai.com');
define('WP_SITEURL', 'https://www.uoeai.com');

清空缓存

如果你希望同时清空页面缓存、dentries 和 inodes 缓存,可以使用以下命令:

sudo sync
sudo echo 3 > /proc/sys/vm/drop_caches
  • sync:将所有未写入磁盘的数据同步到磁盘。
  • echo 3 > /proc/sys/vm/drop_caches:清空所有缓存。

设置清空缓存定时任务

建站初期,内存较小,需要定期清空缓存,保证内存空闲充足。

  • 开启cronb定时任务
sudo systemctl start crond
sudo systemctl enable crond
  • 设置定时任务
    • 打开定时任务编辑器:crontab -e
    • 在编辑器中增加以下定时任务:
#在每个小时的0分和30分时清空所有缓存。也就是每半小时清空缓存
0,30 * * * * /bin/echo 3 > /proc/sys/vm/drop_caches
  • 查看定时任务设置结果:crontab -l

Apache httpd配置文件

  • httpd.conf:/etc/httpd/conf/httpd.conf。
#针对网站根目录路径进行设置
<Directory "/var/www/html">
    Options Indexes FollowSymLinks
#允许重定向
    AllowOverride all
#允许访问目录下所有文件
    Require all granted
</Directory>
  • .htaccess:/var/www/html/.htaccess。

强制使用https进行网站访问;禁止其他域名访问网站,防止垃圾域名解析,减少带宽和性能无畏消耗。

RewriteEngine On
# 禁止其他域名访问
ErrorDocument 403 "Access Denied: Your domain is not allowed to access this site."
RewriteCond %{HTTP_HOST} !^(www\.)?(uoeai\.com|pusuai\.com|siiai\.com|pduai\.com|ehoai\.com)$ [NC]
#RewriteRule ^ - [F]
RewriteRule ^ http://baidu.com%{REQUEST_URI} [L,R=301]

RewriteCond %{HTTP_HOST} ^www\.lrxxkj\.com\.cn$ [NC]
RewriteCond %{HTTP_HOST} ^lrxxkj\.com\.cn$ [NC]
RewriteRule ^ - [F]
# 强制使用HTTPS
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
  • ssl.conf:/etc/httpd/conf.d/ssl.conf。

<VirtualHost *:443> 
 ServerName uoeai.com
 ServerAlias www.uoeai.com
 DocumentRoot /var/www/html/
 SSLCertificateFile /etc/httpd/cert/uoeai_public.crt
 SSLCertificateKeyFile /etc/httpd/cert/uoeai.key
 SSLCertificateChainFile /etc/httpd/cert/uoeai_chain.crt

 SSLEngine on 
 SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
 SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM
 SSLHonorCipherOrder on
 ErrorLog /var/log/httpd/uoeai_error.log
 CustomLog /var/log/httpd/uoeai_access.log combined
 
</VirtualHost>

<VirtualHost *:443> 
 ServerName pduai.com
 ServerAlias www.pduai.com
 DocumentRoot /var/www/html/
 SSLCertificateFile /etc/httpd/cert/pduai_public.crt
 SSLCertificateKeyFile /etc/httpd/cert/pduai.key
 SSLCertificateChainFile /etc/httpd/cert/pduai_chain.crt

 SSLEngine on 
 SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
 SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM
 SSLHonorCipherOrder on
 ErrorLog /var/log/httpd/pduai_error.log
 CustomLog /var/log/httpd/pduai_access.log combined
 
</VirtualHost>


<VirtualHost *:443> 
 ServerName siiai.com
 ServerAlias www.siiai.com
 DocumentRoot /var/www/html/
 SSLCertificateFile /etc/httpd/cert/siiai_public.crt
 SSLCertificateKeyFile /etc/httpd/cert/siiai.key
 SSLCertificateChainFile /etc/httpd/cert/siiai_chain.crt

 SSLEngine on 
 SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
 SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM
 SSLHonorCipherOrder on
 ErrorLog /var/log/httpd/siiai_error.log
 CustomLog /var/log/httpd/siiai_access.log combined
 
</VirtualHost>

<VirtualHost *:443> 
 ServerName ehoai.com
 ServerAlias www.ehoai.com
 DocumentRoot /var/www/html/
 SSLCertificateFile /etc/httpd/cert/ehoai_public.crt
 SSLCertificateKeyFile /etc/httpd/cert/ehoai.key
 SSLCertificateChainFile /etc/httpd/cert/ehoai_chain.crt

 SSLEngine on 
 SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
 SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM
 SSLHonorCipherOrder on
 ErrorLog /var/log/httpd/ehoai_error.log
 CustomLog /var/log/httpd/ehoai_access.log combined
 
</VirtualHost>

<VirtualHost *:443> 
 ServerName pusuai.com
 ServerAlias www.pusuai.com
 DocumentRoot /var/www/html/
 SSLCertificateFile /etc/httpd/cert/pusuai_public.crt
 SSLCertificateKeyFile /etc/httpd/cert/pusuai.key
 SSLCertificateChainFile /etc/httpd/cert/pusuai_chain.crt
 
 SSLEngine on 
 SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
 SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM
 SSLHonorCipherOrder on
 ErrorLog /var/log/httpd/pusuai_error.log
 CustomLog /var/log/httpd/pusuai_access.log combined
</VirtualHost>
  • 阿里云DNS域名解析:
  • 阿里云网络端口开通网络与安全-安全组配置。

阿里云ECS服务器内存优化

2G内存需要省着用,否则服务器经常宕机。

  • PHP-FPM 调优

路径:/etc/php-fpm.d/www.conf

# 动态创建子进程
pm = dynamic
# 最大子进程数
pm.max_children = 20   
# php服务启动时子进程个数
pm.start_servers = 4
# 空闲的子进程个数下限
pm.min_spare_servers = 2
# 空闲的子进程个数上限
pm.max_spare_servers = 4
# 定期重启进程避免内存泄漏
pm.max_requests = 500    
  • mysql调优

路径:/etc/etc/my.cnf

#最大缓存池
innodb_buffer_pool_size = 256M
#最大连接数
max_connections = 500
#
key_buffer_size = 32M
#临时表大小为64M
tmp_table_size = 64M
#查询缓存设置为0
query_cache_size = 0

评论

《 “网站开发及wordpress配置” 》 有 2 条评论

  1. […] PS:你如果是一位网站开发者,不想让别的域名指向自己的网站,请穿越https://www.uoeai.com/?p=274 […]

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注