{"id":967,"date":"2024-06-15T15:31:50","date_gmt":"2024-06-15T07:31:50","guid":{"rendered":"https:\/\/www.mailabc.cn\/blog\/?p=967"},"modified":"2024-07-21T14:45:16","modified_gmt":"2024-07-21T06:45:16","slug":"postfixdovecotroundcube%e5%bc%80%e6%ba%90%e9%82%ae%e4%bb%b6%e7%b3%bb%e7%bb%9f%e6%90%ad%e5%bb%ba%e7%b3%bb%e5%88%975%ef%bc%9aroundcube%e5%ae%89%e8%a3%85%e9%85%8d%e7%bd%ae","status":"publish","type":"post","link":"https:\/\/www.mailabc.cn\/blog\/2024\/06\/15\/postfixdovecotroundcube%e5%bc%80%e6%ba%90%e9%82%ae%e4%bb%b6%e7%b3%bb%e7%bb%9f%e6%90%ad%e5%bb%ba%e7%b3%bb%e5%88%975%ef%bc%9aroundcube%e5%ae%89%e8%a3%85%e9%85%8d%e7%bd%ae\/","title":{"rendered":"Postfix+Dovecot+Roundcube\u5f00\u6e90\u90ae\u4ef6\u7cfb\u7edf\u642d\u5efa\u7cfb\u52175\uff1aRoundcube\u5b89\u88c5\u914d\u7f6e"},"content":{"rendered":"<div id=\"sc_notice\">\u672c\u7cfb\u5217\u6587\u7ae0\u4e3b\u8981\u8ba8\u8bba\u57fa\u4e8ePostfix+Dovecot+Roundcube\u642d\u5efa\u5f00\u6e90\u90ae\u4ef6\u7cfb\u7edf\u7684\u65b9\u6848\u3002\u4e3a\u4e86\u8d34\u5408\u5b9e\u9645\u9700\u8981\uff0c\u4ee5\u865a\u62df\u90ae\u4ef6\u7528\u6237\u4e3a\u57fa\u7840\uff0c\u901a\u8fc7MariaDB\u6570\u636e\u5e93\u6765\u7ba1\u7406\u90ae\u4ef6\u7528\u6237\u3002\u8bf7\u6ce8\u610f\u9605\u8bfb\u524d\u540e\u6587\u3002<\/div>\n<p><strong>\u672c\u7cfb\u5217\u6587\u7ae0\uff1a<\/strong><\/p>\n<p style=\"padding-left: 40px;\"><a href=\"https:\/\/www.mailabc.cn\/blog\/2024\/06\/15\/postfixdovecotroundcube%e5%bc%80%e6%ba%90%e9%82%ae%e4%bb%b6%e7%b3%bb%e7%bb%9f%e6%90%ad%e5%bb%ba%e7%b3%bb%e5%88%971%ef%bc%9a%e7%9b%ae%e6%a0%87%e5%8f%8a%e7%8e%af%e5%a2%83%e5%87%86%e5%a4%87\/\">1. \u76ee\u6807\u53ca\u73af\u5883\u51c6\u5907<\/a><\/p>\n<p style=\"padding-left: 40px;\"><a href=\"https:\/\/www.mailabc.cn\/blog\/2024\/06\/15\/postfixdovecotroundcube%e5%bc%80%e6%ba%90%e9%82%ae%e4%bb%b6%e7%b3%bb%e7%bb%9f%e6%90%ad%e5%bb%ba%e7%b3%bb%e5%88%972%ef%bc%9amariadb%e6%95%b0%e6%8d%ae%e5%ba%93%e9%85%8d%e7%bd%ae%ef%bc%88mysql%ef%bc%89\/\">2. MariaDB\u6570\u636e\u5e93\u914d\u7f6e\uff08MySQL\uff09<\/a><\/p>\n<p style=\"padding-left: 40px;\"><a href=\"https:\/\/www.mailabc.cn\/blog\/2024\/06\/15\/postfixdovecotroundcube%e5%bc%80%e6%ba%90%e9%82%ae%e4%bb%b6%e7%b3%bb%e7%bb%9f%e6%90%ad%e5%bb%ba%e7%b3%bb%e5%88%973%ef%bc%9apostfix%e5%ae%89%e8%a3%85%e9%85%8d%e7%bd%ae\/\">3. Postfix\u5b89\u88c5\u914d\u7f6e<\/a><\/p>\n<p style=\"padding-left: 40px;\"><a href=\"https:\/\/www.mailabc.cn\/blog\/2024\/06\/15\/postfixdovecotroundcube%e5%bc%80%e6%ba%90%e9%82%ae%e4%bb%b6%e7%b3%bb%e7%bb%9f%e6%90%ad%e5%bb%ba%e7%b3%bb%e5%88%974%ef%bc%9adovecot%e5%ae%89%e8%a3%85%e9%85%8d%e7%bd%ae\/\">4. Dovecot\u5b89\u88c5\u914d\u7f6e<\/a><\/p>\n<p style=\"padding-left: 40px;\"><a href=\"https:\/\/www.mailabc.cn\/blog\/2024\/06\/15\/postfixdovecotroundcube%e5%bc%80%e6%ba%90%e9%82%ae%e4%bb%b6%e7%b3%bb%e7%bb%9f%e6%90%ad%e5%bb%ba%e7%b3%bb%e5%88%975%ef%bc%9aroundcube%e5%ae%89%e8%a3%85%e9%85%8d%e7%bd%ae\/\">5. Roundcube\u5b89\u88c5\u914d\u7f6e<\/a><\/p>\n<h2>1. PHP\u5b89\u88c5\u914d\u7f6e<\/h2>\n<p>\u53c2\u8003\u672c\u7ad9<a href=\"https:\/\/www.mailabc.cn\/blog\/2024\/04\/12\/wordpress-6-5-2%e7%89%88%e6%9c%ac%e5%ae%89%e8%a3%85%e8%ae%b0%e5%bd%95\/\">wordpress 6.5.2\u7248\u672c\u5b89\u88c5\u8bb0\u5f55<\/a> \u4e2d\u5173\u4e8ePHP\u5b89\u88c5\u65b9\u6cd5\uff0c\u6b64\u5904\u4e0d\u518d\u8be6\u8ff0\u3002<\/p>\n<p>\u4fee\u6539php-fpm\u7684\u542f\u52a8\u7528\u6237\u548c\u7ec4\u4e3avmail\uff0c\u8fd9\u4e00\u6b65\u662f\u548cnginx\u914d\u7f6e\u76f8\u547c\u5e94\u3002\u914d\u7f6e\u6587\u4ef6\/etc\/opt\/remi\/php83\/php-fpm.d\/www.conf \u4e0b\u9762\u51e0\u4e2a\u914d\u7f6e\uff1a<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">user vmail\r\ngroup vmail\r\nlisten.acl_users = vmail\r\n#access.log = \/var\/opt\/remi\/php83\/log\/php-fpm\/$pool.access.log #\u53ef\u9009\u914d\u7f6e\r\nlisten = \/var\/opt\/remi\/php83\/run\/php-fpm\/www.sock # \u8fd9\u4e2a\u914d\u7f6e\u9700\u8981\u8bb0\u5f55\u4e00\u4e0b\uff0c\u4e0b\u9762nginx\u7684\u914d\u7f6e\u9700\u8981\u7528\u5230<\/pre>\n<p>\u914d\u7f6e\u542f\u52a8php-fpm\uff1a<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">systemctl enable php83-php-fpm\r\nsystemctl start php83-php-fpm<\/pre>\n<h2>2. Nginx\u5b89\u88c5\u914d\u7f6e<\/h2>\n<h3>2.1 \u5b89\u88c5nginx<\/h3>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">yum install nginx<\/pre>\n<h3>2.2 \/etc\/nginx\/nginx.conf \u914d\u7f6e\u6587\u4ef6<\/h3>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"nginx\">user  vmail; #\u4ee5vmail\u8eab\u4efd\u8fd0\u884c\uff0c\u4e0b\u9762\u4f1a\u6d89\u53ca\u76f8\u5173\u7684\u914d\u7f6e\r\nworker_processes  auto;\r\n\r\nerror_log  \/var\/log\/nginx\/error.log notice;\r\npid        \/var\/run\/nginx.pid;\r\n\r\n\r\nevents {\r\n    worker_connections  1024;\r\n}\r\n\r\n\r\nhttp {\r\n    include       \/etc\/nginx\/mime.types;\r\n    default_type  application\/octet-stream;\r\n\r\n    log_format  main  '$remote_addr - $remote_user [$time_local] \"$request\" '\r\n                      '$status $body_bytes_sent \"$http_referer\" '\r\n                      '\"$http_user_agent\" \"$http_x_forwarded_for\"';\r\n    # \u65e5\u5fd7\u6587\u4ef6\u4f4d\u7f6e\r\n    access_log  \/var\/log\/nginx\/access.log  main;\r\n\r\n    sendfile        on;\r\n    #tcp_nopush     on;\r\n\r\n    keepalive_timeout  65;\r\n\r\n    #gzip  on;\r\n\r\n    include \/etc\/nginx\/conf.d\/*.conf;\r\n}<\/pre>\n<h3>2.3 \/etc\/nginx\/conf.d\/roundcube.conf \u914d\u7f6e\u6587\u4ef6<\/h3>\n<p>\u5728\/etc\/nginx\/conf.d\u76ee\u5f55\u521b\u5efaroundcube.conf\u914d\u7f6e\u6587\u4ef6\uff0c\u914d\u7f6e\u76f8\u5173\u53c2\u6570\uff08\u4e0b\u9762\u53c2\u6570\u4ec5\u4f9b\u53c2\u8003\uff0c\u91cc\u9762\u5f88\u591a\u662f\u8ddf\u5b89\u5168\u6709\u5173\u7684\u914d\u7f6e\uff09\uff1a<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">    send_timeout            60;\r\n    client_body_timeout     60;\r\n    client_header_timeout   60;\r\n\r\n    client_max_body_size            50m;\r\n    client_body_buffer_size         1m;\r\n    client_header_buffer_size       1k;\r\n    large_client_header_buffers     4 8k;\r\n    proxy_read_timeout              180;\r\n    server_tokens                   off; # default on\r\n    server_names_hash_bucket_size   512;\r\n    map_hash_max_size               13107200;\r\n\r\n    gzip on;\r\n    gzip_disable     \"msie6\";\r\n\r\n    gzip_vary on;\r\n    gzip_proxied any;\r\n    gzip_comp_level 2;\r\n    gzip_http_version 1.1;\r\n    gzip_min_length 256;\r\n    gzip_types text\/plain text\/css text\/xml text\/javascript text\/x-json application\/json application\/x-javascript application\/javascript application\/xml\r\n application\/xml+rss;\r\n    ssl_session_timeout  5m;\r\n    ssl_session_cache    shared:SSL:10m;\r\n    ssl_session_tickets  off;\r\n    ssl_protocols        TLSv1.2 TLSv1.3;\r\n    ssl_ciphers          \"ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-S\r\nHA384:ECDHE-RSA-AES256-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES256-SHA:HIGH:!MEDIUM:!LOW:!aNUL\r\nL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4:@STRENGTH\";\r\n    ssl_prefer_server_ciphers   on;\r\n    proxy_ssl_verify     off;\r\n\r\nserver {\r\n        listen 80;\r\n        server_name www.mailabc.cn;\r\n        rewrite ^(.*)$ https:\/\/$host$1 permanent;\r\n}\r\n\r\nserver {\r\n        listen 443 ssl http2;\r\n\r\n        # server_name  @web_name\r\n        server_name www.mailabc.cn;\r\n        # \u8fd9\u91cc\u914dSSL\u8bc1\u4e66\r\n        ssl_certificate     \/var\/sslcert\/www.mailabc.cn.pem;\r\n        ssl_certificate_key \/var\/sslcert\/www.mailabc.cn.key;\r\n        ssl_dhparam         \/etc\/nginx\/dhparam.pem;\r\n        ssl_stapling        on;\r\n        ssl_stapling_verify on;\r\n        # \u914d\u7f6eroundcube\u7684\u6570\u636e\u76ee\u5f55\uff0c\u9700\u8981\u63d0\u524d\u521b\u5efa\r\n        root \/var\/www\/roundcube;\r\n        index index.php;\r\n        # \u914d\u7f6efastcgi\u76f8\u5173\u5185\u5bb9\r\n        location ~ \\.php$ {\r\n            fastcgi_pass unix:\/var\/opt\/remi\/php83\/run\/php-fpm\/www.sock; #\u8be5\u914d\u7f6e\u5bf9\u5e94\u4e0a\u8ff0php-fpm\u7684\u8bbe\u7f6e\r\n            fastcgi_index index.php;\r\n            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;\r\n            include fastcgi_params;\r\n        }\r\n}<\/pre>\n<h3>2.4 \u521b\u5efa \/var\/www\/roundcube \u76ee\u5f55<\/h3>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">mkdir \/var\/www\/roundcube\r\nchown vmail:vmail \/var\/www\/roundcube<\/pre>\n<h3>2.5 \u542f\u52a8\u670d\u52a1<\/h3>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">systemctl start nginx\r\nsystemctl enable nginx<\/pre>\n<h2>3. Roundcube\u914d\u7f6e<\/h2>\n<h3>3.1 \u4e0b\u8f7d\u7a0b\u5e8f<\/h3>\n<p>\u4e0b\u8f7d\u94fe\u63a5<a href=\"https:\/\/objects.githubusercontent.com\/github-production-release-asset-2e65be\/4224042\/328c41e9-0555-4359-8924-65dbabb56b5b?X-Amz-Algorithm=AWS4-HMAC-SHA256&amp;X-Amz-Credential=releaseassetproduction%2F20240614%2Fus-east-1%2Fs3%2Faws4_request&amp;X-Amz-Date=20240614T055029Z&amp;X-Amz-Expires=300&amp;X-Amz-Signature=d5e7b0a75566109596af9afe89318fbeb06f4e299f7187c0a9500fc9195d68bf&amp;X-Amz-SignedHeaders=host&amp;actor_id=0&amp;key_id=0&amp;repo_id=4224042&amp;response-content-disposition=attachment%3B%20filename%3Droundcubemail-1.6.7-complete.tar.gz&amp;response-content-type=application%2Foctet-stream\" rel=\"nofollow noopener\" target=\"_blank\">\u5355\u51fb\u6b64\u5904<\/a>\u3002<\/p>\n<h3>3.2 \u90e8\u7f72Roundcube<\/h3>\n<h4>3.2.1 \u89e3\u538b\u7a0b\u5e8f:<\/h4>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">tar -zxvf roundcubemail-1.6.7-complete.tar.gz -C \/var\/www\/\r\ncd \/var\/www\/ &amp;&amp; mv roundcubemail-1.6.7\/* roundcube\/\r\n# \u8bbe\u7f6e\u76ee\u5f55\u6743\u9650\u4e3avmail:vmail\r\nchown vmail:vmail -R \/var\/www\/roundcube<\/pre>\n<h4>3.2.2 \u521d\u59cb\u5316\u6570\u636e\u5e93\uff1a<\/h4>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">\/* \u521b\u5efa\u6570\u636e\u5e93\uff0c\u540d\u79f0\u53ef\u4ee5\u81ea\u5b9a\u4e49 *\/\r\nCREATE DATABASE roundcube;\r\n\r\n\/* \u521d\u59cb\u5316\u6570\u636e\u5e93 *\/\r\nUSE roundcube;\r\nsource \/var\/www\/roundcube\/SQL\/mysql.initial.sql \r\n\r\n\/* \u6388\u6743\u7528\u6237roundcube\u5bf9roundcube\u6570\u636e\u5e93\u64cd\u4f5c\u6743\u9650\uff0c\u53ef\u4ee5\u81ea\u884c\u5b9a\u4e49\u8d26\u6237\u540d\u548c\u5bc6\u7801 *\/\r\ngrant all on roundcube.* to roundcube@localhost identified by 'admin123';\r\nFLUSH PRIVILEGES;<\/pre>\n<h4>3.2.3 config.inc.php \u914d\u7f6e\u6587\u4ef6\uff1a<\/h4>\n<p>\u521b\u5efa\u914d\u7f6e\u6587\u4ef6\uff1a<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">cp \/var\/www\/roundcube\/config\/config.inc.php.sample \/var\/www\/roundcube\/config\/config.inc.php<\/pre>\n<p>\u4fee\u6539\u914d\u7f6e\u6587\u4ef6\u5185\u5bb9\uff1a<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\"># \u914d\u7f6e\u6570\u636e\u5e93\u8fde\u63a5\u65b9\u5f0f\uff0c\u89c1\u4e0a\u9762\u6570\u636e\u5e93\u521d\u59cb\u5316\u5185\u5bb9\r\n$config['db_dsnw'] = 'mysql:\/\/roundcube:admin123@localhost\/roundcube';\r\n# smtp\u91c7\u7528tls\u65b9\u5f0f\u8fde\u63a5587\u7aef\u53e3\r\n$config['smtp_host'] = 'tls:\/\/localhost:587';\r\n# \u542f\u7528installer\u8fdb\u884c\u56fe\u5f62\u754c\u9762\u521d\u59cb\u5316\u6d4b\u8bd5\uff0c\u6d4b\u8bd5\u5b8c\u6bd5\u9700\u8981\u5220\u9664\u3002\u6211\u4e0d\u6253\u7b97\u7528\u8be5\u914d\u7f6e\r\n#$config['enable_installer'] = true; \r\n# \u5ffd\u7565\u68c0\u67e5ssl\u8bc1\u4e66\u6709\u6548\u6027\uff0c\u65b9\u4fbf\u6d4b\u8bd5\u7528\u3002\u751f\u4ea7\u73af\u5883\u4e0d\u5efa\u8bae\u542f\u7528\r\n$config['smtp_conn_options'] = [\r\n'ssl' =&gt; [\r\n'verify_peer' =&gt; false,\r\n'verify_peer_name' =&gt; false,\r\n],\r\n];<\/pre>\n<h4>3.2.4 \u5b89\u5168\u8d77\u89c1\uff0c\u5220\u9664installer\u76ee\u5f55\uff1a<\/h4>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">rm -rf \/var\/www\/roundcube\/installer\/<\/pre>\n<h2>4. \u6d4b\u8bd5<\/h2>\n<h3>4.1 \u767b\u5f55\u6d4b\u8bd5<\/h3>\n<p>\u901a\u8fc7\u57df\u540d\u6216\u8005ip\u8bbf\u95eeroundcube\u754c\u9762\uff0c\u663e\u793a\u5982\u4e0b\uff1a<\/p>\n<p><a href=\"https:\/\/www.mailabc.cn\/blog\/wp-content\/uploads\/2024\/06\/2024061507545458.jpg\" rel=\"box\" class=\"fancybox\"><img class=\"aligncenter wp-image-983 size-full\" data-original=\"https:\/\/www.mailabc.cn\/blog\/wp-content\/uploads\/2024\/06\/2024061507545458.jpg\"  alt=\"Roundcube\u767b\u5f55\u754c\u9762\" width=\"637\" height=\"359\" \/><\/a><\/p>\n<noscript><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-983 size-full\" src=\"https:\/\/www.mailabc.cn\/blog\/wp-content\/uploads\/2024\/06\/2024061507545458.jpg\" alt=\"Roundcube\u767b\u5f55\u754c\u9762\" width=\"637\" height=\"359\" \/><\/a><\/p><\/noscript>\n<p style=\"text-align: center;\"><span style=\"font-size: 10pt; color: #808080;\">Roundcube\u767b\u5f55\u754c\u9762<\/span><\/p>\n<p>&nbsp;<\/p>\n<p>\u767b\u5f55\u4e4b\u540e\uff0c\u754c\u9762\u5982\u4e0b\uff1a<\/p>\n<p><a href=\"https:\/\/www.mailabc.cn\/blog\/wp-content\/uploads\/2024\/06\/2024061507581284.jpg\" rel=\"box\" class=\"fancybox\"><img class=\"aligncenter wp-image-984\" data-original=\"https:\/\/www.mailabc.cn\/blog\/wp-content\/uploads\/2024\/06\/2024061507581284.jpg\"  alt=\"roundcube\u4e3b\u754c\u9762\" width=\"640\" height=\"310\" \/><\/a><\/p>\n<noscript><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-984\" src=\"https:\/\/www.mailabc.cn\/blog\/wp-content\/uploads\/2024\/06\/2024061507581284.jpg\" alt=\"roundcube\u4e3b\u754c\u9762\" width=\"640\" height=\"310\" \/><\/a><\/p><\/noscript>\n<p style=\"text-align: center;\"><span style=\"font-size: 10pt; color: #808080;\">Roundcube\u4e3b\u754c\u9762<\/span><\/p>\n<h3>4.2 \u4fe1\u4ef6\u6536\u53d1\u6d4b\u8bd5<\/h3>\n<p>\u5199\u4fe1\uff1a<\/p>\n<p><a href=\"https:\/\/www.mailabc.cn\/blog\/wp-content\/uploads\/2024\/06\/2024061508013113.jpg\" rel=\"box\" class=\"fancybox\"><img class=\"aligncenter wp-image-987\" data-original=\"https:\/\/www.mailabc.cn\/blog\/wp-content\/uploads\/2024\/06\/2024061508013113.jpg\"  alt=\"Roundcube\u5199\u4fe1\u754c\u9762\" width=\"640\" height=\"311\" \/><\/a><\/p>\n<noscript><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-987\" src=\"https:\/\/www.mailabc.cn\/blog\/wp-content\/uploads\/2024\/06\/2024061508013113.jpg\" alt=\"Roundcube\u5199\u4fe1\u754c\u9762\" width=\"640\" height=\"311\" \/><\/a><\/p><\/noscript>\n<p style=\"text-align: center;\"><span style=\"font-size: 10pt; color: #808080;\">Roundcube\u5199\u4fe1\u754c\u9762<\/span><\/p>\n<p>\u8bfb\u4fe1\uff1a<\/p>\n<p><a href=\"https:\/\/www.mailabc.cn\/blog\/wp-content\/uploads\/2024\/06\/2024061508034177.jpg\" rel=\"box\" class=\"fancybox\"><img class=\"aligncenter wp-image-988\" data-original=\"https:\/\/www.mailabc.cn\/blog\/wp-content\/uploads\/2024\/06\/2024061508034177.jpg\"  alt=\"Roundcube\u8bfb\u4fe1\u754c\u9762\" width=\"640\" height=\"310\" \/><\/a><\/p>\n<noscript><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-988\" src=\"https:\/\/www.mailabc.cn\/blog\/wp-content\/uploads\/2024\/06\/2024061508034177.jpg\" alt=\"Roundcube\u8bfb\u4fe1\u754c\u9762\" width=\"640\" height=\"310\" \/><\/a><\/p><\/noscript>\n<p style=\"text-align: center;\"><span style=\"font-size: 10pt; color: #808080;\">Roundcube\u8bfb\u4fe1\u754c\u9762<\/span><\/p>\n<p>\u81f3\u6b64\uff0c\u672c\u7cfb\u5217\u6587\u7ae0\u7ed3\u675f\u3002\u4f46\u662f\uff0c\u5b9e\u9645\u4e0a\u6211\u4eec\u7684\u5de5\u4f5c\u521a\u5f00\u59cb\uff0c\u8fd8\u6709\u5927\u91cf\u529f\u80fd\u7b49\u7740\u6211\u4eec\u53bb\u63a2\u7d22\uff0c\u4f8b\u5982\u5982\u4f55\u4fee\u6539\u9644\u4ef6\u5927\u5c0f\u3001\u522b\u540d\u90ae\u7bb1\u5982\u4f55\u5904\u7406\u3001\u81ea\u52a8\u8f6c\u53d1\u5982\u4f55\u914d\u7f6e\u7b49\u7b49\u3002\u540e\u7eed\u6211\u4eec\u5c06\u9488\u5bf9\u76f8\u5173\u4e3b\u9898\u66f4\u65b0\u6587\u6863\u8fdb\u884c\u8ba8\u8bba\u3002<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u672c\u7cfb\u5217\u6587\u7ae0\uff1a 1. \u76ee\u6807\u53ca\u73af\u5883\u51c6\u5907 2. MariaDB\u6570\u636e\u5e93\u914d\u7f6e\uff08MySQL\uff09 3. Postfix\u5b89\u88c5\u914d\u7f6e [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":954,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[122],"tags":[107,106,104],"class_list":["post-967","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-roundcube","tag-nginx","tag-php","tag-roundcube"],"_links":{"self":[{"href":"https:\/\/www.mailabc.cn\/blog\/wp-json\/wp\/v2\/posts\/967","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.mailabc.cn\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.mailabc.cn\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.mailabc.cn\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.mailabc.cn\/blog\/wp-json\/wp\/v2\/comments?post=967"}],"version-history":[{"count":6,"href":"https:\/\/www.mailabc.cn\/blog\/wp-json\/wp\/v2\/posts\/967\/revisions"}],"predecessor-version":[{"id":989,"href":"https:\/\/www.mailabc.cn\/blog\/wp-json\/wp\/v2\/posts\/967\/revisions\/989"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.mailabc.cn\/blog\/wp-json\/wp\/v2\/media\/954"}],"wp:attachment":[{"href":"https:\/\/www.mailabc.cn\/blog\/wp-json\/wp\/v2\/media?parent=967"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.mailabc.cn\/blog\/wp-json\/wp\/v2\/categories?post=967"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.mailabc.cn\/blog\/wp-json\/wp\/v2\/tags?post=967"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}