• WordPress搭建Personal Blog


    早就想搭建一个专属于自己的博客了,用来记录自己生活、学习的点点滴滴。之所以选WordPress,主要是因为它可以支持Latex,而且特别喜欢其简约的风格。

    WordPress有个the famous 5 minutes installing,无奈我对LAMP(Linux,Apache,MySQL,PHP)几乎一无所知,用了将近两天才把整个博客搭建起来。安装 WordPres很容易,但是把相关的配置好就比较麻烦了。下面是我整个搭建过程的总结。

    操作系统:Ubuntu 12.04LTS

    首先列出需要的文件:

    1.wordpress http://wordpress.org/download/

    2.mysql http://www.mysql.com/downloads/mysql/

    3.httpd2.4.6 http://httpd.apache.org/download.cgi

    4.apr1.4.8 http://apr.apache.org/download.cgi

    5.apr-util1.5.2 http://apr.apache.org/download.cgi

    6.php5.5.1 http://php.net/downloads.php

    7.libxml2.9.1 http://www.xmlsoft.org/downloads.html

    8.prce8.33 http://www.pcre.org

    ubuntu安装ftp服务器(一般配置)

    1.安装vsftpd

    ~$ sudo apt-get install vsftpd

    2.配置vsftpd

    2.1修改/etc目录下的vsftpd的配置文件

    $sudo gedit /etc/vsftpd.conf

    源文件中不少命令被注释,根据每条命令的具体说明启用一部分即可,如下所示:

    listen=YES # 服务器监听
    local_enable=YES # 本地主机访问允许
    write_enable=YES # 写允许
    dirmessage_enable=YES # 进入文件夹允许
    xferlog_enable=YES #激活ftp 上传和下载的日志
    connect_from_port_20=YES #允许使用20号端口作为数据传送的端口
    chroot_local_user=YES
    chroot_list_enable=YES
    
    # (default follows)
    chroot_list_file=/etc/vsftpd.chroot_list
    secure_chroot_dir=/var/run/vsftpd/empty pam_service_name=vsftpd
    rsa_cert_file=/etc/ssl/private/vsftpd.pem

    2.2设置ftp相关目录

    安装完毕后,/srv下会增加一个ftp目录。我们在/srv/ftp目录下创建两个分别名为upload和download的目录,分别用于上传和下载。

    ~$ mkdir /srv/ftp/download

    ~$ mkdir /srv/ftp/upload

    接下来我们为刚才创建的几个目录设置权限,执行如下命令: ~$ sudo chmod 755 /home/ftp ~$ sudo chmod 777 /home/ftp/upload ~$ sudo chmod 755 /home/ftp/download

    3.vsftpd 设置用户目录

    3.1增加组~$ sudo groupadd ftpgroup

    增加用户ftpuser并设置其目录为/home/nation/ftp/upload ~$ sudo useradd -g ftpgroup -d /home/nation/ftp/upload -M ftpuser

    (注:g:用户所在的组 d:表示指定创建用户的目录的位置,M:不建立默认的自家目录,也就是说在/home下没有自己的目录)

    3.2设置用户口令~$ passwd ftpuser,然后连续两次输入口令。

    3.3编辑chroot_list文件

    ~$ sudo gedit /etc/vsftpd.chroot_list 内容为ftp用户名,每个用户占一行,如:

    ftpuser

    4.启动vsftpd

    ~$ sudo service vsftpd start

    查看当前所有进程: ~$ ps -e 至此服务器端vsftp的基本配置已完成,vsftpd已开启。(注意防火墙配置) 关闭vsftpd进程只需要执行~$ sudo service vsftpd stop,重启vsftpd进程执行~$sudo service vsftpd restart

    参考:http://blog.csdn.net/nation_chen/article/details/7066277

    安装MySQL

    1.安装MySQL

    $ sudo apt-get install mysql-server

    2.配置MySQL

    注意,在Ubuntu下MySQL缺省是只允许本地访问的,如果你要其他机器也能够访问的话,那么需要改变/etc/mysql/my.cnf配置文件了!下面我们一步步地来:

    默认的MySQL安装之后根用户是没有密码的,所以首先用根用户进入:

    $mysql -u root

    进入mysql之后,最要紧的就是要设置Mysql中的root用户密码了。

    mysql> GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY “123456″;

    注意,我这儿用的是123456做为root用户的密码,请大家最好使用大小写字母与数字混合的密码,且不少于8位。这样的话,就设置好了MySQL中的root用户密码了.

    3.root权限创建数据库

    mysql>CREATE DATABASE xoops;

    mysql>GRANT ALL PRIVILEGES ON xoops.* TO xoops_root@localhost IDENTIFIED BY “654321″;

    这样就建立了一个xoops_roots的用户,它对数据库xoops有着全部权限。以后就用xoops_root来对xoops数据库进行管理,而无需要再用root用户了,而该用户的权限也只被限定在xoops数据库中。

    如果你想进行远程访问或控制,那么你要做两件事:

    其一:

    mysql>GRANT ALL PRIVILEGES ON xoops.* TO xoops_root@”%” IDENTIFIED BY “654321″;

    允许xoops_root用户可以从任意机器上登入MySQL。

    其二:

    $sudo gedit /etc/mysql/my.cnf

    >bind-address=127.0.0.1 => bind-address= 你机器的IP

    这样就可以允许其他机器访问MySQL了。

    参考:http://wiki.ubuntu.org.cn/MySQL%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97

    安装PRCE(Perl Compatible Regular Expressions)

    在http:www.pcre.org下载pcre8.33.tar.bz2解压,进入目录依次执行./configure;make;sudo make install完成安装,再执行ldconfig。libpcre在后面编译Apache2时会用到。

    安装httpd2.4.6

    编译httpd时必须保证已经安装了APR、APR-Util,如果没有就下载后分别解压到httpd2.4.6的srclib/apr和/srclib/apr-util下(如过解压后的目录带有版本号,记得将目录重命名)。在执行./configure命令时在后面添加 –with-included-apr选项。

    1.解压缩后进入目录

    $ bzip2 -d httpd-2.4.3.tar.gz $ tar -xvf httpd-2.4.3.tar $ cd httpd-2.4.3

    2.进行配置

    $ ./configure --with-included-apr --enable-module=so –prefix=/usr/local/apache2

    (如果不指定prefix,会默认安装到/usr/local/apache2;–enable-module=so不能少了,这在后面安装PHP时是必须要的)

    3.编译并执行安装

    $ make

    $ make install

    4.测试(开启或终止)

    /usr/local/apache2/bin/apachectl -k start/stop

    安装libxml2

    在安装libxml2之前,需要先安装python-dev,在终端执行:sudo apt-get install python-dev

    1.解压libxml2后进入目录

    $ tar zxvf libxml2-git-snapshot.tar.gz

    $ cd libxml2-2.9.1

    2.进行配置

    $ ./configure –prefix=/usr/local/libxml2

    3.编译并安装

    $ make

    $ make install

    如果安装成功以后,在/usr/local/libxml2 /目录下将生成bin、include、lib、man和share五个目录。在后面安装PHP5源代码包的配置时,可通过在configure命令的选 项中加上“–with-libxml-dir=/usr/local/libxml2″选项,指定安装libxml2库文件的位置。

    安装PHP

    在安装PHP之前,我们必须安装libpng-dev,否则在执行./configure时会出现找不到png.h的错误。只要安装了libpng-dev后就可以顺利configure过去,我看到后面也找不到jpeg相关的东西,就顺带把libjpeg-dev, libpng-dev, libtiff-dev, libjasper-dev, libavcodec-dev, libavformat-dev, libswscale-dev都一起安装算了,这些在使用OpenCV的时候会用到。在终端执行命令:sudo apt-get install libjpeg-dev libpng-dev libtiff-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev

    1.解压缩后进入目录

    $ bzip2 -d php-5.5.1.tar.bz2

    $ tar -xvf php-5.5.1.tar

    $ cd php-5.5.1

    2.进行配置

    $ ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql --with-libxml-dir=/usr/local/libxml2 --with-gd --with-zlib --enable-mbstring  --enable-zip –with-libxml-dir=/usr/local/libxml2

    (注意:不要少了—with-zlib,不然后面在WordPress中安装插件或升级时会出现”Missing zlib extensions”的问题)。

    3.编译并安装

    $ make

    $ make install

    4.设置PHP的配置文件php.ini

    $ cp php.ini-development /usr/local/lib/php.ini

    5.配置Apachehttpd.conf使其能加载PHP模块

    $ sudo gedit /usr/local/apache2/conf/httpd.conf

    修改httpd.conf的内容,确保下面两条没被注释掉:

    LoadModule rewrite_module modules/mod_rewrite.so
    LoadModule php5_module modules/libphp5.so

    因为WordPress用到了Apache的mod_rewrite模块,故这里的第一条也不能被注释掉。

    6.配置Apachehttpd.conf使其支持PHP相关的扩展名文件

    添加如下代码

    1 <FilesMatch .php$>
    2   SetHandler application/x-httpd-php
    3 </FilesMatch> #仅支持.php

    或者

    1 <FilesMatch ".ph(p[2-6]?|tml)$">
    2     SetHandler application/x-httpd-php
    3 </FilesMatch> #支持.php,.php2,.php3,.php4,.php5,.php5和phtml

    允许.php文件被php源码过滤器处理并以高亮模式显示源码,添加如下代码:

    1 <FilesMatch ".phps$">
    2     SetHandler application/x-httpd-php-source
    3 </FilesMatch>
    4 
    5 RewriteEngine On
    6 RewriteRule (.*.php)s$ $1 [H=application/x-httpd-php-source]

    7.重启Apache

    /usr/local/apache2/bin/apachectl restart

    在浏览器中输入本机IP地址,可以看到页面显示“It works!"。

    安装WordPress

    第一步:下载WordPress安装包并解压

    从此处下载WordPress压缩包并解压缩 http://wordpress.org/download/

    • 如果你想将WordPress上传至一个远程服务器,先下载WordPress压缩包至你的电脑,接着解压缩
    • 如果你使用shell来访问你的服务器,而且你可以很轻松地使用console工具,你可以使用wget (或者 lynx再或者其他的console命令)来直接下载WordPress至你的web server,这样就可以避免使用FTPing(该方法适用于Linux系统):
    • $wget http://wordpress.org/latest.tar.gz
    • 接着使用一下命令解压缩: $tar -xzvf latest.tar.gz

    这样WordPress压缩包将会解压缩至文件夹wordpress,这个文件夹与你下载的latest.tar.gz压缩包处于同一个目录下.

    • 如果你没有shell来访问你的服务器,或者你不方便使用 console工具,你可以使用ZipDeploy上传WordPress至你的web server

    第二步:创建WordPress数据库和一个用户

    你可以利用shell运行mysql语句,快速而方便地创建MySQL用户和数据库。下面给出创建语句,其中美元符号表示命令提示符:

    $ mysql -u adminusername -p
    Enter password:
    Welcome to the MySQL monitor.  Commands end with ; or g.
    Your MySQL connection id is 5340 to server version: 3.23.54
    Type 'help;' or 'h' for help. Type 'c' to clear the buffer.
    mysql> CREATE DATABASE databasename;
    Query OK, 1 row affected (0.00 sec)
    mysql> GRANT ALL PRIVILEGES ON databasename.* TO "wordpressusername"@"hostname"
        -> IDENTIFIED BY "password";
    Query OK, 0 rows affected (0.00 sec)
    mysql> FLUSH PRIVILEGES;
    Query OK, 0 rows affected (0.01 sec)
    mysql> EXIT
    Bye
    $

    从这个例子中可以看出:

    • 根用户名(root)也是管理员用户名 (adminusername)。用看似“普通“的名称作为mysql管理员名称更加安全,这样就不会把“mysql”命令作为系统根用户输入了。(尽量 避免以根用户的身份工作,降低被发现的可能性)。数据库管理员使用mysqladmin时的用户名可以作为mysql用户名。
    • wordpress或blog都是数据库名称的理想选择。
    • 可以用wordpress作为wordpress用户名,但需要注意,如果在这里使用wordpress,所有人都能猜出你的 wordpress用户名。
    • hostname通常是localhost。如果不知道将hostname设为什么并且自己不是WordPress虚拟主机的管理员,请查看系统管理员信息。系统管理员可以考虑使用非根用户账号来管理数据库。
    • 应选择保密性较高的密码,最好是大小写字母、数字及符号的组合。避免使用字典中的某个单词,可以选择自己能够记住的一个词组中每个单词的首字母作为密码。

    如果想把这些用户名和密码记下来,避免在用户名和密码保护范围内做记录。需要记住的包括数据库名称、wordpress用户名、hostname以及密码。当然,这些信息已经在(或者会暂时在)wp-config.php文件中,也没有必要在别的地方重复记录了。

    第三步:设置wp-config.php文件

    用户可以亲自创建并编辑wp-config.php文件,也可以在运行安装脚本(第五步)时让WordPress帮助用户编辑wp-config.php(不过仍然需要告诉WordPress我们的数据库信息)。

    (更多细节以及创建wp-config.php配置文件和密码密钥的信息请点击编辑wp-config.php文件。)

    返回第一步中解压WordPress压缩包的位置,将wp-config-sample.php重命名为wp-config.php,之后在文本编辑器中打开该文件。

    在标有

     // ** MySQL settings - You can get this info from your web host ** //

    输入你的数据库相关信息

    DB_NAME

    在第二步中为WordPress创建的数据库名称

    DB_USER

    在第二步中创建的WordPress用户名

    DB_PASSWORD

    第二步中为WordPress用户名设定的密码

    DB_HOST

    第二步中设定的hostname(通常是localhost,但总有例外;参见编辑wp-config.php文件中的“可能的DB_HOST值)。

    DB_CHARSET

    数据库字符串,通常不可更改(参见zh-cn:编辑wp-config.php)。

    DB_COLLATE

    留为空白的数据库排序(参见zh-cn:编辑wp-config.php)。

    在标有

      * Authentication Unique Keys.

    的版块下输入密钥的值(在线密钥生产器https://api.wordpress.org/secret-key/1.1/salt/),保存wp-config.php文件。

    第四步:上传文件

    接下来需要决定将博客放在网站的什么位置上:

    • 网站根目录下(如:http://example.com/)
    • 网站子目录下(如:http://example.com/blog/)

    Note: 我们的网页根目录在web服务器文件流中的位置会随虚拟主机商和操作系统而发生变化。具体情况请咨询虚拟主机商或系统管理员。

    根目录

    • 如果需要将文件上传到web服务器,可用FTP客户端将wordpress目录下所有内容(无需上传目录本身)上传至网站根目录
    • 如果文件已经在web服务器中且希望通过shell访问来安装wordpress,可将wordpress目录下所有内容(无需转移目录本身)转移到网站根目录

    子目录

    • 如果需要将文件上传到web服务器,需将wordpress目录重命名,之后用FTP客户端将重命名后的目录上传到网站根目录下某一位置
    • 如果文件已经在web服务器中且希望通过shell访问来安装wordpress,可将wordpress目录转移到网站根目录下某一位置,之后重命名 wordpress目录

    第五步:运行安装脚本

    在常用的web浏览器中运行安装脚本。

    • 将WordPress文件放在根目录下的用户请访问:http://example.com/wp-admin/install.php
    • 将WordPress文件放在子目录(假设子目录名为blog)下的用户请访问:http://example.com/blog/wp-admin/install.php

    安装配置文件

    WordPress无法查找到wp-config.php文件时会通知用户并试图自动创建并编辑wp-config.php文件。(用户可以在web浏览器中加载wp-admin/setup-config.php以新建wp-config.php文件。)WordPress询问用户数据库的具体情况并将之写入新的wp-config.php文件。如果新文件创建成功,用户可以继续安装;否则需返回第三步:设置wp-config.php文件

    第六步:修改Apachehttpd.conf

    $ sudo gedit /usr/local/apache2/conf/httpd.conf

    将Apache绑定到制定的IP和/或端口上

    Listen 192.168.0.155:80

    指定服务器出现的问题应该被发送到的邮箱地址

    ServerAdmin yunfeiwang@hust.edu.cn

    指定服务器的域名和端口,如果没有注册域名,可以填IP地址

    ServerName 192.168.0.155:80

    指定wordpress所在的绝对路径

    DocumentRoot "/srv/upload/wordpress"
    <Directory "/srv/upload/wordpress">

    指定Wordpress进行读写文件操作的user和group

    group groupname
    user username

    切换语言/语言包(这步我没做,就用英文的算了)

    若您是初次安装 WordPress,请点击这里

    下面步骤指导您将现有的英文 WordPress 站点切换为中文。

    1. 通过 FTP、SSH 等方式打开并编辑站点根目录下的 wp-config.php文件。
    2. 查找 define('WPLANG', '');一行,在第二个参数处填入 zh_CN,变成 define('WPLANG', 'zh_CN');并保存文件。
    3. 进入站点控制板(dashboard),看到更新提示后进行升级即可。WordPress 会自动从官方网站下载中文语言包并安装。

    若 您当前正在使用非官方的中文语言包,请您注意:非官方语言包通常会替换 WordPress 程序本身的升级部分,使 WordPress 通过第三方服务器升级,这可能有一定风险。若您不愿使用官方版本的语言包,请务必选择您信任的语言包。至于使用何种中文支持,完全由您自主选择。 WordPress 并不会禁止您使用非官方语言包。当然,我们会认真处理您的批评和建议,欢迎联系我们

    如下是卸载非官方语言包、安装官方中文版本的通用步骤。请注意,如果您没有使用非官方版本的语言包,请不要进行下列操作。我们在这里假设您使用的非官方中文版本没有改动您的数据库:

    1. 备份数据库。
    2. 备份所有文件,并删除博客根目录下 wp-config.php之外的所有文件。请注意保留 wp-config.php。
    3. 从 cn.wordpress.org 下载最新官方中文版本。解压缩并上传至站点根目录。
    4. (选做)比对 wp-config-sample.php和留下的 wp-config.php:若 wp-config-sample.php有新增的内容,请复制并按照说明填写;若留下的 wp-config.php比 wp-config-sample.php中的设置项还要多,请删除那些多余的项目。

    参考:http://codex.wordpress.org/zh-cn:%E5%AE%89%E8%A3%85_WordPress

    其他问题

    1.安装插件Latex Everyting时出现了“Could not create directory”的问题,"Could not create directory./youdir/wp-content/upgrade:

    解决方法如下: 1. 找到这个文件: /wp_admin/includes/class-wp-filesystem-direct.php  2. 查找 “function mkdir” 3. 修改这个函数至如下的代码,至插件 Fix “Cound not create directory” problem 这一段,即可

     1 function mkdir($path, $chmod = false, $chown = false, $chgrp = false) {
     2         // safe mode fails with a trailing slash under certain PHP versions.
     3         $path = untrailingslashit($path);
     4         if ( empty($path) )
     5             return false;
     6 
     7         if ( ! $chmod )
     8             $chmod = FS_CHMOD_DIR;
     9 
    10         if ( ! @mkdir($path) )
    11             return false;
    12         $this-&gt;chmod($path, $chmod);
    13         if ( $chown )
    14             $this-&gt;chown($path, $chown);
    15         if ( $chgrp )
    16             $this-&gt;chgrp($path, $chgrp);
    17         return true;
    18 }

    结果还是不行。

    猜测是权限的问题,执行$ chmod 777 wp-content,还是出现类似的错误,但是我们发现不能创建的目录变了,“Could not create directory./yourdir/wp-content/plugins/latex-everyting。

    这时我们应该检查一下wp-content文件夹下的的权限问题,更改wp-content目录及其子目录的权限,执行$chmod -R 777 wp-content后问题解决。

    2.激活Latex Everyting时出现问题

    Fatal error:Call-time pass-by-reference has been removed in /yourdir/latex-single-posts.php on line 7

    解决方法:这里出现问题的原因都是一样的,及参数的传递错误。我们可以根据提示的代码错误行数找到错误并修改。

    激活插件

    修改latex-single-posts.php第7行,

    将latex_everything->add_controller(‘single_post’,&$latex_single_post_controller);

    修改为latex_everything->add_controller(‘single_post’,$latex_single_post_controller);

    继续激活,又出现了问题

    Fatal error:Call-time pass-by-reference has been removed in /yourdir/latex-post-types.php on line 8

    修改latex-post-types.php第8行,

    将latex_everything->add_controller(‘post_type’,&$latex_post_type_controller);

    修改为latex_everything->add_controller(‘post_type’,$latex_post_type_controller);

    继续激活,还是出现了问题:

    Fatal error:Call-time pass-by-reference has been removed in /yourdir/latex-terms.php on line 7

    修改latex-terms.php第7行,

    将latex_everything->add_controller(‘term’,&$latex_term_controller);

    修改为latex_everything->add_controller(‘term’,$latex_term_controller);

    3.WordPress提示:执行请求动作,连接信息必需提供

    在 wordpress后台自动升级以及更新删除主题或者插件的时候,需要输入FTP账户信息。据说这个填写FTP信息界面,只会出现在PHP进程不是以用户 身份来运行的主机上,也就是网站服务器运行PHP的用户和 wordpress文件夹的所有者不一样,目的就是为了安全,wordpress在升级时会创建一个临时文件看看owner是不是和当前运行的php是否 一样,如果不一样,就会出现这个界面。

    遇到这种情况的解决办法:

    在wp-config.php中填写连接信息。

    如果为了以后更新方便的话可以在 wp-config.php 中加入一下代码:

    // ** FTP SETTINGS FOR AUTO-UPDATE ** // define(‘FTP_HOST’, ‘localhost’); define(‘FTP_USER’, ‘ftp帐号’); define(‘FTP_PASS’, ‘ftp密码’);

    这样无论升级 wordpress 或者插件的时候就都不会有那个FTP提示了。

    4.修改wordpress上传文件2M限制

    编辑php.ini文件:

    #vim /usr/local/lib/php.ini

    大概在591行处有一个参数:upload_max_filesize = 10M,默认为2M,将其中的2M改为你想要限制的大小,如下所示。然后我顺手把每次可上传的最大文件数由20改为了30.

    //===================
    ; Maximum allowed size for uploaded files.
    ; http://php.net/upload-max-filesize
    
    upload_max_filesize = 20M
    ; Maximum number of files that can be uploaded via a single request
    max_file_uploads = 30
    //================

    重启apache服务器

    #/usr/local/apache2/bin/apachectl restart

    不知道为什么我修改了之后总是8M。继续找资料,后来发现原来这个大小是取post_max_size和upload_max_filesize中的最小值,继续修改如下:

    //=====================================
    ; Maximum size of POST data that PHP will accept.
    ; http://php.net/post-max-size
    post_max_size = 30M
    //=======================================

    重启apache服务器

    #/usr/local/apache2/bin/apachectl restart

    OK~

    参考:http://naonao.blog.51cto.com/1135983/827973 

    http://ar.newsmth.net/thread-add920665842c4.html

    5.当想使用个性化的Permalink时,出现.htaccess不能写的问题

    在WordPress的根目录下新建一个名为.htaccess的文件,然后修改其权限

    $touch .htaccess

    $chmod 666 .htaccess

    你可以用下面这些标签来定制“美观”或者“接近美观”的固定链接,这里有一些注意事项:

    • 确保用 %post_id% 或%postname% 结束结固定链接结构(如/%year%/%monthnum%/%day%/%postname%/)),这样每个固定链接都会指向一篇独立的日志。
    • 考虑到运行上的问题,最好不要以分类、标签、作者或是日志名字段作为固定链接结构的开始。这是因为这些都是文本字段,如果以文本字段作为固定链接结构的起始 部分,WordPress需要花更多时间来判断这是一个日志的URL还是页面的URL(页面URL总是使用“页面别名”作为URL),为了作为补 偿,WordPress在数据库中存储了大量额外信息(信息数量之庞大直接影响到了具有多个页面的网站的运行)。因此,最好以年份或日志ID等数值型字段 开始你的固定链接结构。参见WordPress测试者对这个问题的讨论。参考:http://www.cnblogs.com/lhb25/archive/2010/07/23/1783381.html

    6.使用XML-Sitemap时出现文件不能写的问题

    先打开博客页面的Settings下面XML-Sitemap选项,取消Basic Options下面的Sitemap files下的两个选项。

    然后在博客的根目录下新建名为sitemap.xml和sitemap.xml.gz的文件

    $touch sitemap.xml sitemap.xml.gz

    修改这两个文件的权限

    $chmod 755 sitemap.xml sitemap.xml.gz

    参考:http://www.arnebrachhold.de/2006/04/07/google-sitemaps-faq-sitemap-issues-errors-and-problems/?utm_source=wp-wm&utm_medium=install&utm_content=help-files#P28_gen_files

    7. 403 forbidden you don’t have permission to access / on this server

    这类问题只可能出现在Apache Server上面。如果出现这种问题,请打开Apache的配置文件httpd.conf,查看DocumentRoot指定的整个网站的文件夹是否正确,如果正确的话就检测改文件夹对应的读写权限。一般就是这两个方面的问题引起的。可以参加博文http://www.lost-in-code.com/server-management/403-forbidden-you-dont-have-permission-to-access-on-this-server/。这篇文章里面的DirectoryIndex不是这次引发403 forbidden问题的原因,而是DocumentRoot指定文件夹权限的问题。httpd.conf文件的DirectorIndex只有一项index.html,而我们的WordPress都是PHP的网页,如果不加上一项index.php的话,我们的网站只会显示一个目录的Index。

    8.网页的标题出现乱码

    因为我启用了All In One Seo Pack插件,导致网页的标题出现乱码。点击网页地址栏下的SEO字样进行插件设置,取消Rewrite titles,即可解决问题。

    最后,经过第一次安装WordPress的经历,再加上第二次重装系统后再利用之前WordPress的数据备份还原我的整个WordPress的痛苦经历。我总结出了一个小经验:一定要注意WordPress文件夹和文件的属性!文件夹都设置成755或者更高的权限,文件都可以设置成644。如果文件夹的属性不是755,那么会出现各种意想不到的问题!

  • 相关阅读:
    Swift8-枚举Enumerations
    Swift7-闭包
    Swift6-函数
    Swift5-控制流
    Swift4-集合类型
    什么是node.js
    nodejs的安装
    环境变量的认识,,,
    shell是什么,各种shell的初步认识,适用于初学者
    exports和module.exports的区别
  • 原文地址:https://www.cnblogs.com/jeromeblog/p/3394964.html
Copyright © 2020-2023  润新知