wordpress本地安装测试,安装不了。

下次自动登录
现在的位置:
& 综合 & 正文
在 Mac OS X 系统上安装 WordPress 本地测试
http://www.liqi.name/install-wordpress-on-mac-os-x/
1. 下载 XAMPP
同样选择 XAMPP 这个 Apache MySQL PHP 集成包,。
安装 XAMPP
下载后解压缩开并双击 pkg 文件,Mac OS 的安装会启动,点击“继续”即可,安装程序还会向您询问管理员密码。
安装成功后,MacOS X 版的 XAMPP 将被安装到 /Applications/xampp
启动 XAMPP
安装完成后,在终端(Terminal)输入下面的命令:sudo
然后使用下面的命令启动 XAMPP:
/Applications/XAMPP/xamppfiles/xampp start
这样,Apache 和 MySQL 就被启动并运行。
安装 WordPress
在mac os x部署网站,可以使用Xampp程序包,它包含了
SSLSupport
可以省去很多编译、安装的过程,当然也可以使用fink、darwin port等来安装。
首先打开xampp control panel,启动apache,启动mysql。
然后需要修改apache的默认配置,打开文件/private/etc/httpd/httpd.conf,
DocumentRoot “/Users/” #你的网站目录
Options Indexes MultiViews #自动列出文件索引
DirectoryIndex index.html index.htm index.php #把需要自动作为首页的页面列出
#打开 php支持
LoadModule php4_module libexec/httpd/libphp4.so
AddModule mod_php4.c
然后重启apache ,或者命令行sudo apachectl restart。
把wordpress解压缩到,你的网站目录,从浏览器访问http://localhost/wordpress 按照提示安装就可以了。
数据库配置localhost不行的话,就试一下 127.0.0.1.
在最后一步,记住密码,然后用admin登录,修改 密码。
可以把theme更换到 WordPress Classic 1.5 ,页面比较宽。
&&&&推荐文章:
【上篇】【下篇】MAMP:在 OS X 中搭建 Apache, MySQL, PHP 环境并本地安装、调试 WordPress - Blog - Renfei SongMAMP 这个名字来源于 Macintosh Apache MySQL PHP,显然专门用来在 Mac 环境下搭建 Apache、MySQL、PHP 平台。虽然 OSX 中已经预装了 Apache 1.3.x 和 PHP 4.3.2 环境,但是启用、配置并安装整合 MySQL 仍然是一件极其复杂的工作。MAMP 的特点就是简便(从以下安装步骤即可看出),而且它不会破坏系统本身的文件,所修改、创建文件的范围仅限程序本身。系统要求:Mac OS X 10.4 (Tiger) 及以上。安装步骤:去官方网站下载最新版本。打开 dmg 文件,把 MAMP 拖到 Applications 文件夹中(注意:MAMP 必须处于 Applications 文件夹才能正常工作)。设定MAMP打开 MAMP(而不是 MAMP Pro),选择 Preferences 标签,会看到端口(Ports)的设定。默认 Apache 端口是 8888,如果不修改,就意味着需要通过 http://localhost:8888/ 访问。你也可以改成其他(例如改成 80,就不用输入 : 后面的部分了),但是缺点是,你每次都需要输入密码。在 PHP 标签选择 PHP 5.2.4 以上版本即可(WordPress 3.2 的最低需求)。在 Apache 标签,选择文件的存放地点,这个可以任意修改。比如我的设定是:/Users/renfei/Documents/localhost点 OK 完成设定。打开 MAMP 服务并创建数据库点击 Start Servers,稍等片刻,发现红灯变成绿灯,说明服务开启成功。开启后,应该自动出现 MAMP 的起始页(如果没有出现,点击 Open Start Page 按钮。在开启的网页中选择 phpMyAdmin,然后选择“数据库”标签。在“新建数据库”中给你的数据库起一个名字(例如我用 wordpress),填好后直接点“新建”。安装 WordPress下载 WordPress。下载后,解压缩,把 wordpress 文件夹放到之前设定的文件存放地点。按照我的设定,文件全部在 /Users/renfei/Documents/localhost/wordpress访问 localhost(按照我的设定,地址为localhost:8888/wordpress),并开始熟悉的 WordPress 安装过程。相关内容按照这样填写:database name: wordpress
database host/server: localhost
database user: root
database password: root
至此,全部安装过程完成,你可以在本机使用 WordPress 了。&来自话题&&/&&/&&/&&/&&/&相关文章讨论Please enable JavaScript to view the comments powered by Disqus.【已解决】本地测试wordpress虽能打开主页但帖子打不开:Not Found The requested URL xxx was not found on this server
期间,虽然已经可以打开主页了,没有404错误了:
但是点击任意帖子,都还是会出错:
The requested URL /crifan_com_online/boc_dollar_money_convert_to_renminbi_yuan_through_online_bank/ was not found on this server.
所以,看来还是没解决固定链接跳转的问题。
【解决过程】
1. 然后这次再去wordpress后台,设置一下固定链接试试:
结果发现,其默认变成了:
固定链接,是,文章名
所以去改为:
自定义结构: /%postname%/
结果虽然保存更改了,但是页面刷新后,看到的配置,却又是变成原先的 文章名 了。
另外,重启wamp后,也还是这个配置:文章名,
即,之前的改变为 自定义的动作,无效了。
然后去看看apache的mod_rewrite
结果从wamp的菜单中,没有找到apache又mod_rewrite
所以只能去看对应的配置文件
E:\dev_install_root\wamp_x64\bin\apache\apache2.2.22\conf\httpd.conf
果然原先是被注释掉的:
#LoadModule rewrite_module modules/mod_rewrite.so
所以去改为:
#LoadModule rewrite_module modules/mod_rewrite.so
3. 重启apache,即wamp,但是结果还是找不到mod_rewrite。
后来才发现,原来在apache modules中,叫做
rewrite_module
然后打开,开启此模块。
4. 另外,再去处理AllowOverride
即,权限问题:
E:\dev_install_root\wamp_x64\bin\apache\apache2.2.22\conf\httpd.conf
# Each directory to which Apache has access can be configured with respect
# to which services and features are allowed and/or disabled in that
# directory (and its subdirectories).
# First, we configure the &default& to be a very restrictive set of
# features.
&Directory /&
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
&/Directory&
# Each directory to which Apache has access can be configured with respect
# to which services and features are allowed and/or disabled in that
# directory (and its subdirectories).
# First, we configure the &default& to be a very restrictive set of
# features.
&Directory /&
Options FollowSymLinks
AllowOverride All
Order deny,allow
Deny from all
&/Directory&
再重启wamp
然后,随便打开某个帖子,比如:
都可以正常打开了:
5.不过,最后,觉得还是很诡异的是:
wordpress后台,把固定链接的设置,从:
自定义结构
结果虽然显示更改成功,但是结果显示出来的选择,还是 文章名。。。。
但是不管了,暂时是整个本地的wordpress,算是工作正常了。
等有空再折腾了。。。
不过突然想起来了,貌似上述的:
自定义的 /%postname%/
貌似本身就是一样的效果。所以才会即使设置为
自定义的 /%postname%/
也自动变为 文章名 吧。
解决wordpress能打开(无404),但帖子无法打开的办法是:
在固定链接本身设置为 /%postname%/,即文章名的前提下:
1.确保apache的mod_rewrite是开启了。
即httpd.conf中,取消注释,已变成:
#LoadModule rewrite_module
modules/mod_rewrite.so
2.确保有权限可以重写url
即httpd.conf中的
&Directory /&
的AllowOverride从None变成了All:
&Directory /&
Options FollowSymLinks
AllowOverride All
Order deny,allow
Deny from all
&/Directory&
共享此文章:
免费的格式化Javascript源码的网站
查询Unicode字符,且还带Oct,Decimal,Hex,HTML Entity
HTML和Javascript都支持,很好用。CentOS 7 / RHEL 7 上安装 LAMP + phpMyAdmin | 水景一页
Haoxian Zeng's personal website
您在这里:
CentOS 7 / RHEL 7 上安装 LAMP + phpMyAdmin
之前根据的经验写了安装记录,得到不少网友的亲睐。随着 CentOS 7 发布,安装过程发生了不少变化。因此在虚拟机上跑了一下,根据之前的记录做了修改,以供参考。主要注意的是,现在数据库由 MySQL 改成 MariaDB 了,故而 LAMP 代表的就是 Linux + Apache + MariaDB + PHP 了。
新的 CentOS 与 RHEL 的关系越来越密切,以下的安装过程同时适用于 CentOS 7 及 RHEL 7 发行版。但是因为不是在当前下测试的,可能某些地方会与实际情况有出入,还请大家指正。
作为一个全新的教程,还是简单介绍一下背景吧。
系统:新的 CentOS 7 采用了 systemd,因而某些;现在 作为数据库软件,这里也将直接安装 MariaDB。
Linode VPS:虽然 ,但是基本的东西还是没什么变化,而且现在有了没了。用 Visa / MasterCard 信用卡 还是非常方便的,选择套餐 – 注册 – 选择服务器位置并付款(输入信用卡信息)就行了(已经没有年付折扣了)。
在 Linode 上部署系统应该也没什么变化:
(登录)进入控制中心 – 进入 Dashboard – Deploy a Linux Distribution
选择 Linux 发行版(Distribution) – 设定磁盘大小(单位 MB)- 选择是否使用交换空间(swap) – 设定 root 密码(以后还能改)等,然后点击 Deploy 就开始安装系统了。
*注意:还可以在选择 Linux 发行版的时候,直接使用选择框右边的 Deploying using
的提示来选择在安装系统的同时部署一个 LAMP 的服务器环境。但是对于新手来说还是自己走一遍这个过程比较好,为以后修改、优化积攒经验。
这些操作都是一目了然的,没什么难度,特别是 Linode 还有详细的。可是配置 LAMP 服务器就比较费事了。虽然一键安装的快捷编译安装脚本,或者 Linode 上的自动化安装脚本很省事,可自己把这些过程走一遍是有利于以后维护服务器的。
下面记录的安装和配置 Linux + Apache + MariaDB + PHP + phpMyAdmin 服务器环境是从使用
等 SSH 远程登录软件连接到 VPS 之后开始的。也就是说,Linux 应该已经安装好了。(如果要在本地用虚拟机测试,或者希望了解更多的关于使用 VPS 的心得体会,请同时参考系列文章。)
快捷阅读目录
0 系统运行环境
Linux Distribution: CentOS 7 64bit
RAM: 1024MB
Disk Space: 5GB
域名: cnzhx.net
IP 地址: 12.34.56.78 (这是个示例用的 IP,没有实际意义)
注意:上面示例用的内容应该换成自己的;建议内存不小于 1GB 的安装 64 位系统,比如因为。
切记:因为系统不同,指令可能有所不同;硬件不同,配置方式也可能有些不同。强烈建议实战前先在自己的电脑上用 VirtualBox 之类的软件创建个先练练手。可参考。
1 基本设置
这一部分参考 Linode 知识库 – 参考资料 1。
1.1 设置 HOSTNAME
先将配置写到 /etc/sysconfig/network 文件的末尾。直接用 echo 指令将内容使用 && 操作符附加到该文件最后一行即可,(注意该条语句各部分之间的空格,一共三个)
echo "HOSTNAME=cnzhx.net" && /etc/sysconfig/network
然后设置 hostname,
hostname "CnZhx"
我给设置成自己的主域名,即 CnZhx。
1.2 配置 vim
Linode 上直接部署的 CentOS 7 中已经安装了 vim。
如果系统中没有安装 vim,可以试试看 vi,只是没有 vim 好用和好看罢了。
如果不用 vim 就直接跳到下面的 。
或者先安装 vim 也行:
yum -y install vim
为了使之彩色显示代码,同时还支持行号标记和鼠标定位,需要编辑 vim 配置文件:
vim /etc/vimrc
从键盘输入 i 进入编辑模式,按键盘上的 PgDn (或上、下、左、右键)到文本最后一行最后一个字符之后按回车换行,在末尾分两行输入:
set mouse=a
从键盘输入 Ctrl+c,然后输入 :wq 保存、退出(这里 : 号表示退出编辑模式进入指令模式,w 表示保存,q 表示退出)(单纯的退出而不保存则是输入 :q,强制退出则是 :q!)。
1.3 更新 HOSTS 配置文件 /etc/hosts
这个文件的作用跟 Windows 中的 HOSTS 类似,可以给本地系统直接解析域名,这里设置了之后,这个系统本身访问 cnzhx.net 就不需要访问域名解析服务器了。
vim /etc/hosts
打开编辑。在最后添加(注意 IP 地址与域名之间的空格),
12.34.56.78 cnzhx.net
保存退出。
1.4 配置网络
注意:首次使用可以跳过这一步,直接使用 Linode 安装系统后的默认配置,等以后再配置静态 IP。
其实一个服务器就相当于一台个人电脑,只不过 IP 地址是固定的公网的 IP。因而可以在自己的域名管理系统那里将域名的 IP 指定为这个特定的 IP,然后别人就可以通过域名访问到这个 IP 地址所在的服务器(域名解析服务器会做转换)。然后这个服务器上安装了相应软件就可以提供网站服务了。
默认情况下,Linode VPS 使用 DHCP 来配置网络,这样做需要 VPS 运行 dhcp 客户端进程来从主控制台获取本 VPS 的 IP。当然会浪费一些资源了(CPU和内存),而且还需要开放 63 端口。所以这里采取静态网络配置来避免这些问题。
网络配置与选择的 VPS 服务商的配置有关,一般服务商提供的文档都会有说明的。
如果要增加 IPv6 支持,请参考 。
从 Linode Manager 的 Dashboard 中的 Remote Access 标签页中可以获知自己 VPS 的网络配置信息。类似于:
Public IP: 12.34.56.78
Default Gateways 12.34.56.1
DNS Resolvers 74.207.241.5
74.207.242.5
修改 DNS 解析设置:
vim /etc/resolv.conf
按照上面的 DNS Resolvers 对应录入
nameserver 74.207.241.5
nameserver 74.207.242.5
nameserver ::2
nameserver ::3
options rotate
保存并退出。
然后(如果使用了 DHCP 自动获取 IP 则可以跳过此步骤直接跳到下面的 1.5 继续):
vim /etc/sysconfig/network-scripts/ifcfg-static-eth0
如果是 VirtualBox 虚拟机,则是,
vim /etc/sysconfig/network-scripts/ifcfg-static-enp0s3
对应录入,
# Configuration for eth0
DEVICE=eth0
BOOTPROTO=none
# 暂时不启用 IPv6
IPV6INIT=no
# This line ensures that the interface will be brought up during boot.
ONBOOT=yes
# eth0 - This is the main IP address that will be used for most outbound connections.
# The address, netmask and gateway are all necessary.
IPADDR0=12.34.56.78
# 不再用 24 表示公网IP;17 表示内网 IP
PREFIX0=24
GATEWAY=12.34.56.1
# 如果还有另一个公网 IP 23.45.67.89
IPADDR1=23.45.67.89
PREFIX1=24
保存并退出。
因为 DHCP 已经不需要了,可以使用 systemctl list-unit-files --type=service 命令查看 dhcp 相关服务的状态,然后停止它们。甚至可以删除相关软件包:
yum remove dhcp
重起 VPS 即可生效。
将香港时区文件设置符号链接到 localtime
ln -sf /usr/share/zoneinfo/Hongkong /etc/localtime
timedatectl list-timezones # 需要从这个列表中退出的话直接按 q 键即可。
timedatectl set-timezone Asia/Hong_Kong
timedatectl
更详细配置说明请参考:。
2 安装 LAMP
2.1 先更新系统
yum update
2.2 安装并配置 Apache 网络服务器
CentOS 7 中默认的是 ,Apache 官网有份很好的 。
yum install httpd
备份配置文件(建议对于所有的配置文件,做任何更改前都先备份一份,以便应对未知错误)
mkdir ~/confbak
cp -R /etc/httpd ~/confbak
其中 ~ 表示当前登录用户的用户文件夹;-R 参数表示递归到所有子目录。
默认情况下 Apache 加载的模块(.so)过多,作为个人用的简单服务器可以比较安全的禁用其中一些模块,以提高 Apache 的性能、减少内存占用。请参考。
因为默认情况下,位于 /etc/httpd/ 目录下的所有以 .conf 结尾的文件都会被 Apache 读取,并按照字母顺序加载做为 Apache 的配置,所以增加虚拟主机的时候,实际上不需要修改 /etc/httpd/conf/httpd.conf,而是在 /etc/httpd/conf.d/ 下新建一个配置文件 vhost.conf 来配置虚拟主机。
也有人每个虚拟主机(或网站、或域名)都单独弄个 conf 文件,比如 cnzhx.net.conf、zhx.net.conf、phpmyadmin.conf 等。这个看自己的喜好还有使用方便而定吧。
另外就是,水景一页建议另建一个 common.conf 文件来放置一些公共的设置,如果不想每次都去修改 httpd.conf 这个 Apache 的主配置文件的话。
配置虚拟主机(/etc/httpd/conf.d/vhost.conf )
vim /etc/httpd/conf.d/vhost.conf
输入下面的内容(# 号后面的该行内容是注释):
1. 下面有路径中使用了域名 cnzhx.net 来做文件夹的名字,只是为了方便区分不同的域名,无它意。
2. 在服务器上一行行输入还是挺麻烦的,可以在本地编辑好了,然后通过 sftp 上传过去(
就挺好,有中文界面,还支持 ssh 登录(选择 sftp 模式即可))。
# cnzhx.net
&VirtualHost *:80&
ServerAdmin
ServerName cnzhx.net
ServerAlias www
# 非常感谢 cheers 的提醒,虽然测试显示无影响,但
# 注意下面这行末尾不要带 /
DocumentRoot /srv/www/cnzhx.net/html
&Directory "/srv/www/cnzhx.net/html/"&
Options FollowSymLinks
# 下一行这样设置就可以在网站文件的目录中使用
AllowOverride All
# 下一行是替代 Allow from all 的新机制
Require all granted
&/Directory&
ErrorLog /srv/www/cnzhx.net/logs/error.log
CustomLog /srv/www/cnzhx.net/logs/access.log combined
ServerSignature Off
&/VirtualHost&
# 这是另一个位于同一服务器的网站,如果不需要则删除此段配置
&VirtualHost *:80&
ServerAdmin
ServerAlias test
DocumentRoot /srv/www/test/html
&Directory "/srv/www/test/html/"&
Options FollowSymLinks
AllowOverride All
Require all granted
&/Directory&
ErrorLog /srv/www/test/logs/error.log
CustomLog /srv/www/test/logs/access.log combined
ServerSignature Off
&/VirtualHost&
# 为了以后给访问 phpMyAdmin 的时候用,也可以是别的端口,如 4444
Listen 2082
# phpMyAdmin,访问地址:http://12.34.56.78:2082/phpMyAdmin
&VirtualHost 12.34.56.78:2082&
ServerAdmin
DocumentRoot /srv/www/phpmyadmin/html
&Directory "/srv/www/phpmyadmin/html/"&
Options FollowSymLinks
AllowOverride None
Require all granted
&/Directory&
ErrorLog /srv/www/phpmyadmin/logs/error.log
CustomLog /srv/www/phpmyadmin/logs/access.log combined
ServerSignature Off
&/VirtualHost&
虽然配置文件写好了,但是还不能启动 httpd 进程,因为上面设置的各个文件夹(网站目录)还没有创建。
创建各个虚拟主机的文件夹(根据需要增加或删除),
# 主机 1 的
mkdir /srv/www/cnzhx.net/html -p
mkdir /srv/www/cnzhx.net/logs
# 主机 2 的
mkdir /srv/www/test/html -p
mkdir /srv/www/test/logs
# 主机 3 的
mkdir /srv/www/phpmyadmin/html -p
mkdir /srv/www/phpmyadmin/logs
为了能够在系统启动时自动运行 Apache 服务器,需要运行下面的指令:
systemctl enable httpd
输出类似于,
ln -s '/usr/lib/systemd/system/httpd.service' '/etc/systemd/system/multi-user.target.wants/httpd.service'
然后启动 Apache 服务,
systemctl start httpd
如果上述指令提示说本来已经启动了 httpd,则重新加载它,
systemctl reload httpd
现在需要将 http 服务加入防火墙以允许外部访问(也就是将 HTTP 默认使用的端口 80 加入到防火墙允许列表里),
firewall-cmd --add-service=http --permanent
–permanent 参数表示这是一条永久防火墙规则,如果不加这个参数则重启系统后就没有这条规则了。
而对于自定义的用于 phpMyAdmin 的 2082 端口,也需要添加相应的防火墙规则。因为是非标准端口,直接用数字表示即可,
firewall-cmd --zone=public --add-port=2082/tcp --permanent
重启 Firewalld 使该规则生效,
systemctl restart firewalld
如果防火墙默认没有启动,则上述指令会提示错误,“FirewallD is not running”。那么先启用防火墙服务,
systemctl enable firewalld && systemctl start firewalld
其中 && 表示两条指令依次执行。
启动后再重新执行前两或三条指令,
firewall-cmd --add-service=http --permanent
firewall-cmd --zone=public --add-port=2082/tcp --permanent
systemctl restart firewalld
如果要查看加入后的防火墙规则,使用指令,
firewall-cmd --list-all
显示结果类似于,
public (default, active)
interfaces: enp0s3
services: dhcpv6-client http ssh
masquerade: no
forward-ports:
icmp-blocks:
rich rules:
如果已经做好了 DNS 域名解析,现在用浏览器打开域名应该能够看到 Apache 的测试页面了。(这里因为是在本地虚拟机上测试的,所以没用域名而是直接用的 IP 地址访问。)
CentOS 7 服务器 Apache 安装成功
总结一下关键点,httpd 服务默认配置文件:
默认配置文件: /etc/httpd/conf/httpd.conf
加载模块的配置文件: /etc/httpd/conf.modules.d/ directory (e.g. PHP)
选择 MPMs (处理模式)
[worker, prefork (默认是这个)] 和 event: /etc/httpd/conf.modules.d/00-mpm.conf
默认端口: 80 和 443 (SSL)
默认日志: /var/log/httpd/{access_log,error_log}
systemctl 是新的 systemd 下的系统控制指令,详情请参考 一文。
还可以直接用 apachectl 来控制 Apache 服务执行一些操作,比如优雅地重新加载配置,
apachectl graceful
“优雅地”的意思是不中断客户的访问的情况下逐渐地将所有 httpd 进程更新为使用新配置的新进程。
详情需要查看其简单的帮助文件,
apachectl -h
其它重要的防火墙 Firewalld 选项有,
# firewall-cmd --state
# firewall-cmd --list-all
# firewall-cmd --list-interfaces
# firewall-cmd --get-service
# firewall-cmd --query-service service_name
# firewall-cmd --add-port=8080/tcp
2.3 安装和配置 Mariadb 数据库服务
MariaDB 是在 MySQL 基础上重建的一个数据库软件,各 Linux 发行版都陆陆续续。CentOS 从 7 开始默认使用 MariaDB。
2.3.1 安装
yum install mariadb-server mariadb
2.3.2 加入随系统启动
systemctl enable mariadb
输出结果类似于,
ln -s '/usr/lib/systemd/system/mariadb.service' '/etc/systemd/system/multi-user.target.wants/mariadb.service'
2.3.3 启动 mariadb 守护进程(mysqld)
systemctl start mariadb
其默认用户名还是 mysql,
top -u mysql
可以查看内存占用情况。
停止/重启或停用 mariadb 服务的一些指令:
sudo systemctl stop mariadb
sudo systemctl restart mariadb
sudo systemctl disable mariadb
# 检查 mariadb 服务器 是否正在运行
sudo systemctl is-active mariadb
2.3.4 安全配置 MariaDB
使用 MariaDB 内建的安全配置脚本进行配置
mysql_secure_installation
这里需要配置 mysql 根用户和密码、清除其他用户、清除不需要的数据库等。输出类似于下面的执行过程,其中需要我们从键盘输入的内容用蓝色注释出来了:
# /usr/bin/mysql_secure_installation
/usr/bin/mysql_secure_installation: line 379: find_mysql_client: command not found
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
Enter current password for root (enter for none):这里直接回车,这里可不是 Linux root 用户,而是 MariaDB 数据库的 root 用户
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.
Set root password? [Y/n] y
New password:输入你的数据库root用户密码
Re-enter new password:再输入一遍
Password updated successfully!
Reloading privilege tables..
... Success!
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] y
... Success!
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] y
... Success!
By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] y
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] y
... Success!
Cleaning up...
All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!
然后使用 MySQL 的 root 帐户(不同于 Linux 的 root 帐户,刚才设置密码了)登录进去
mysql -u root -p
输入密码后回车,下面是输出示例,可以看到命令提示符变为 MariaDB [(none)]&
# mysql -u root -p
Enter password:
Welcome to the MariaDB monitor. C or \g.
Your MariaDB connection id is 10
Server version: 5.5.37-MariaDB MariaDB Server
Copyright (c) , Oracle, Monty Program Ab and others.
Type '' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]&
创建一个新数据库给 WordPress 用(这里取名为 wordpress,也可以用别的名字)
MariaDB [(none)]& creat
创建一个新用户,并将该数据库的权限赋给他(这里只是举例,用户名为 newdbuser,密码为 dbuserpassword)
MariaDB [(none)]& grant all on wordpress.* to 'newdbuser' identified by 'dbuserpassword';
MariaDB [(none)]&
退出数据库
MariaDB [(none)]& quit
备份配置文件,
cp /f ~/f.bak
其它的先不做了,回头用图形界面的 phpMyAdmin 来做。
2.4 安装和配置 PHP
注意:如果要使用 event 模式的话,需要。
安装 PHP5,
yum install php
备份配置文件 /etc/php.ini,还有 php.conf 以及 10-php.conf,
cp /etc/php.ini ~/confbak/php.ini.bak
cp /etc/httpd/conf.d/php.conf ~/confbak/httpd/conf.d/php.conf.bak
cp /etc/httpd/conf.modules.d/10-php.conf ~/confbak/httpd/conf.modules.d/10-php.conf.bak
并确保 /etc/php.ini 中有下面的语句(不同的就修改,没有的就添加,某些数值可以后再调整,这是针对一个简单的运行 WordPress 的服务器的配置):
error_reporting = E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR
display_errors = Off
log_errors = On
max_execution_time = 300
memory_limit = 32M
2.5 安装 php-mysql
为了在 PHP 中使用 MySQL,还需要安装这个 php-mysql 包:
yum install php-mysql
3 安装和配置 phpMyAdmin
Remi 安装源上有最新的 PHP、MySQL 以及 phpMyAdmin 的 Yum 安装包,可以方便安装、更新。但是正在使用的 Linux 发行版 CentOS 7 上的软件包可能版本上要求不一样,所以使用 Yum 安装源优先级插件来进行控制。
3.1 安装使用 EPEL Repository
选择合适的源地址来安装,参考方法:。
到 EPEL 主页:
找到 The newest version of ‘epel-release’ for EL7,点击打开新页面,复制 epel-release-7-5.noarch 的链接(数字可能有变化,当前版本是 7.5)。采用下面的方法直接安装:
yum install http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
3.2 安装phpMyAdmin
yum install phpmyadmin
嗯,前面已经打好基础了,所以这里就是这么简单。
phpMyAdmin 的默认安装目录是 /usr/share/phpMyAdmin,同时会在 Apache 的配置文件目录中自动创建虚拟主机配置文件 /etc/httpd/conf.d/phpMyAdmin.conf (区分大小写)。
同样的,先备份配置文件以防修改出现错误,
cp /etc/httpd/conf.d/phpMyAdmin.conf ~/confbak/httpd/conf.d/phpMyAdmin.conf.bak
然后修改配置文件(/etc/httpd/conf.d/phpMyAdmin.conf)中有设置:
#Alias /phpMyAdmin /usr/share/phpMyAdmin
#Alias /phpmyadmin /usr/share/phpMyAdmin
也就是说,我们可以通过绑定到 Apache 服务器上的任何域名访问 phpMyDdmin。比如这里可以通过 cnzhx.net/phpmyadmin 或者 cnzhx.net/phpMyAdmin 访问。但是这样一来,phpMyAdmin 的内容就与网站内容混到一起了,感觉 phpMyAdmin 成了网站的一个目录。但实际上我们并不希望别人也去访问这个页面。所以我们使用习惯的地址加端口 2082(而不是默认的 80 端口,换成自己喜欢的端口就行,再比如 3344)的方式,即 IP:port/phpMyAdmin 的链接形式访问 phpMyAdmin,加 # 注释掉上面的 Apache Alias 规则(在上面每一行 Alias 前面加上 # 号,上面已经给加上 # 号了),并将
&Directory /usr/share/phpMyAdmin/&
&/Directory&
Require ip 127.0.0.1
Require ip ::1
Require all granted
保存退出,使之可以从任何地方都可以访问。如果本地电脑是固定 IP 的,为了安全,也可以将上面的 Require all granted 改成 Require ip &your-local-ip&。咱的 ADSL 就享受不到这样的待遇了。
因为在前面创建虚拟主机配置文件 /etc/httpd/conf.d/vhost.conf 的时候已经为 phpMyAdmin 配置了一个端口为 2082 的虚拟主机,只能通过该虚拟主机(端口)访问 phpMyAdmin。因为 /srv/www/phpmyadmin/public_html 配置为 phpMyAdmin 的虚拟主机目录,为该目录创建符号连接到 phpMyAdmin 安装目录(/usr/share/phpMyAdmin):
ln -sf /usr/share/phpMyAdmin /srv/www/phpmyadmin/html
备份然后修改 phpMyAdmin 的配置文件,
cp /etc/phpMyAdmin/config.inc.php ~/confbak/config.inc.php.bak
vi /etc/phpMyAdmin/config.inc.php
找到其中的如下代码段:
$cfg['blowfish_secret'] = '这里随便填上一串乱七八糟的字符即可,字母、数字等,长度最好大于 16 个';
按照上面的提示填写 blowfish_secret 字符串。其他的不用修改,保存并退出。
3.4 重起 Apache 使配置生效
systemctl restart httpd
现在就可以通过 ip:port/phpMyAdmin (将 IP 换为 VPS 的 IP,端口为 2.1 中设置的 phpmyadmin 的虚拟主机端口,注意大小写)访问 phpMyAdmin 了。
使用前面创建的用户名和密码(.3.4 中 grant 语句中包含的用户名和密码)登录 phpMyAdmin。
然后还可以按照自己的使用习惯对 phpMyAdmin 的行为进行配置,请参考我写的另一篇文章:。
4 创建一个新帐户以访问网站文件
因为按照本文的安装方法,Apache(httpd 进程) 的运行用户为 apache,不做改动的话,WordPress 的运行用户也就是 apache 了。访问服务器的时候虽然可以用 root,但是安全起见,最好禁止 root 用户远程登陆服务器,而 http 服务的用户 apache 又不能用来登录并管理服务器,所以这里新建一个普通用户用于远程管理网站文件,而管理服务器的时候可以通过这个用户登录后 su root 来执行。
4.1 增加新用户
useradd username
这里只是举例,使用 username 做为用户名,下同。Linux 中的用户相关操作可以,有关于 useradd、passwd 等指令的介绍。
4.2 为新用户设置密码
passwd username
4.3 修改 /srv/www/ 的子目录和文件的属主和组为新用户(username)及其组(username)
chown username:username /srv/www/* -R
-R 表示递归操作所有子文件夹。
4.4 上传网站文件
使用新创建的用户,通过 (或其它 sftp 软件,使用 SFTP – SSH File Transfer Protocal 协议连接)登录服务器(当然,能修改(上传)的目录和文件是由 SSH 登录的用户的权限决定的),将网站文件上传到前面设置虚拟服务器时设定的文件夹,这里:
cnzhx.net 的文件位于 /srv/www/cnzhx.net/html 目录下;
<zhx.net 的文件位于 /srv/zhx.net/html 目录下。
4.5 文件及文件夹权限设置
使用 WordPress 的时候需要上传附件、更新插件或者 WordPress 本身等操作,这些操作需要对特定的某些文件、目录有写入权限。有 2 个解决方案:
方法 1:这种方法可以在 WordPress 后台执行一切更新插件或 WordPress 本身的操作、可上传附件、方便使用 WPSC 等缓存插件,等等等等。这就要求赋予 apache 用户比较大的权限,即,让 apache 用户成为这些目录和文件的所有者。直接将该网站文件夹的所有者和组都改成 apache,但是将新建的管理用户 usename 增加到 apache 组并使该组有 2775 的权限(也许可以是 2770),即,所有文件和文件夹以及新建的文件夹和文件都对用户 apache 和组 apache 完全可读可写可执行。顺次输入命令,
cd /srv/www/cnzhx.net/
chown apache:apache html -R
chmod 2775 html -R
usermod -a -G apache username
最后一行指令将用户 username 添加到 apache 组中。这样做的目的是,username 这个用户也可以拥有对网站的文件目录的完全操作权限,方便使用 ftp 软件维护网站源文件。
重起 Apache 服务(service httpd restart)使之生效。
方法 2:保守一点的方案是,仅保证 WordPress 后台可以上传附件,使用 WPSC 等缓存插件,而更新插件和 WordPress 的操作通过 ftp 上传更新文件的方式来进行:仅仅修改受影响的一部分文件夹的所属组属性即可,其它仍保留其所有者为 username。
一般需要让 WordPress 本身可写入和修改文件的文件夹只有 uploads。进入 WordPress 安装目录的 wp-content 目录中:
cd /srv/www/cnzhx.net/public_html/wp-content/
首先为了保证上传附件功能,修改 uploads 文件夹以及其子文件夹和文件的属性(属主改为 apache,组不变:
chown apache:apache uploads -R
chmod 2755 uploads
其次,如果是 WordPress 多站点模式,还需要按照同样的方法修改 /wp-content/blogs.dir 目录属性。为了使
可创建缓存文件,在 wp-content 目录下新建文件夹 cache,并同样修改属性。不过,如果要安装 WPSC,还是需要按照其提示做一些操作的。
最后将 username 添加到 apache 组中:
usermod -a -G apache username
(参考 。)
5 优化及安全
安装完服务器,进行了基本的配置之后,下一步就该考虑安全和优化问题了。进行基本的安全设置非常有必要,这样可以避免被人“无意”中入侵。
请分别参考下列系列文章:
如果有更新,个别地方的更新说明就放在原地,较大范围的更新说明放在这里。
更新了很多描述语言使之更符合新手的阅读习惯;修正几处指令执行顺序以方便理解;修正 phpMyAdmin(主机 3)的配置文件。
7.1 访问虚拟主机一直显示 testing 1 2 3 页面(如前面的图示)
如果检查配置都没问题的话,可能是因为没有(文中要求过),或者是没有正确配置 SELinux。
8 参考资料
cyberciti:
如果各位网友有什么好的建议,欢迎留言讨论。
本文发表于。永久链接:&#60;&#62;。转载请保留此信息及相应链接。
标签 ,,,,,,,,,
引用通告:
引用通告:
引用通告:
引用通告:
引用通告:
引用通告:
引用通告:
近期评论发表在《》[&#8230;] CentOS 7 / RHEL 7 上安装 LAMP + phpMyAdmin [&#8230;]发表在《》既然已经启用该模块了,说明你不需要再手动去删除那一行开头的 # 号了。跳过这一步然后继续下面的配置就行了。 [...]发表在《》不用国内的 SSL 证书是因为担心国内的公司无法抵抗来自国内监管机构的压力而为他们提供解密密钥。关于此类安全 [...]huxbop发表在《》[root@cnhap ~]# apachectl -M | grep ssl_module ssl_mod [...]发表在《》先运行 # apachectl -M | grep ssl_module 看看返回结果是否是 ssl_mod [...]
订阅 &#038; 关注}

我要回帖

更多关于 wordpress本地安装 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信