豆子的個人博客的地址是 www.beanxyz.com/blog , 今天打算把wordpress從blog直接移到根目錄下面,這樣當我輸入 www.beanxyz.com 的時候,就可以直接看見目錄了;
具體方法如下,以便日後備忘:
豆子使用的是EC2的Linux AMI配置的LAMP,因此操作上略有不同。
第一步,把所有的文件從當前所在的目錄移到apache的根目錄下面
cd /var/www/html/blog
cp -r * /var/www/html
第二步,更改siteurl,這裏有幾種方式
一種是打開 wp-config.php, 然後手動輸入
一種是登陸www.beanxyz.com/wp-admin, 然後更改site-url;我因爲採用了第一種方式直接編碼,因此這個界面的Url選項就變灰了
還有一種方式是可以在數據庫文件中查詢URL來修改,這裏我就不贅述了。
第三步,更改Permanlink的設定,參考 http://guiem.info/permalinks-on-wordpress-amazon-ec2/
/etc/httpd/conf 裏面修改httpd.conf 文件,確保格式如下,注意博客所在的路徑, AllowOverride 的設定應當是All
<Directory "/var/www/html"/>
Options FollowSymLinks
AllowOverride All
</Directory>
同時注意修改/var/www/html 目錄下面的.htaccess 文件。如果沒有這個文件創建或者丟失了,可以通過關閉Permanlink然後重新打開的方式自動創建。
內容如下
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ -[L]
RewriteCond %{REQUEST_FILENAME}!-f
RewriteCond %{REQUEST_FILENAME}!-d
RewriteRule . /index.php[L]
</IfModule>
# END WordPress
第四步,更改數據庫中圖片的Url, 登陸 http://www.beanxyz.com/phpmyadmin
最簡單的辦法是直接Export數據庫(wp_posts 和wp_postmeta),通過文本編輯器搜索替換 www.beanxyz.com/blog 爲 www.beanxyz.com , 然後drop 或者 empty掉這兩個數據庫,Import修改後的sql文件回來,就行了
當然也可以通過sql語句進行替換,格式如下
update wp_posts set post_content= replace(post_content,'http://www.beanxyz.com/blog','http://www.beanxyz.com') where post_content like '%http://www.beanxyz.com/blog%'
最後,還有第五步,確認權限,尤其是Plugin下載賬號對wp-content需要有讀寫權限。
豆子是使用默認的登錄賬號Direct直接下載,那麼確保apache賬號擁有Owner權限即可
sudo chown -R apache /var/www/html