iT邦幫忙

0

從 Apache 換到 Nginx 的一些疑問?

LAMP 基本安裝無問題,最近打算試試看 Nginx
因此出現以下的問題

  1. 如何讓 Nginx 能跑 phpmyadmin?發現安裝 phpmyadmin 時沒有 Nginx 可以選
  2. 如何啟用 rewrite 功能?
  3. 如何新增、啟用網站?apache 做法是 conf 做設定、設定PORT然後 a2ensite 啟用
  4. Nginx 改變URL的方法?例如隱藏副檔名等等

會再問的,感謝~

froce iT邦大師 1 級 ‧ 2019-11-06 21:38:44 檢舉
1.https://www.howtoforge.com/tutorial/how-to-install-phpmyadmin-with-nginx-on-ubuntu-1804/
2.https://xuexb.com/post/nginx-url-rewrite.html
3.一樣是配置conf然後就可以了。然後會有include其他conf的狀況。
4.沒用過。

不過你這些google一下就有了,學著自己查,好嗎?
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 個回答

1
阿展展展
iT邦好手 1 級 ‧ 2019-11-06 21:53:12
最佳解答

如果mysql的root賬號為空,需要設定root密碼
CentOS下預設安裝的mysql伺服器,裡面的root賬號預設密碼為空,首先為root設定一個密碼

#mysqladmin -u root password yourpassword

注: 雖然通過一些特殊配置,可以使phpmyadmin允許空密碼登入,但是不推薦這樣做,尤其是公網的伺服器。

設定php.ini正確配置session.save_path

1). 首先檢查php.ini配置檔案

#grep session.save_path /etc/php.ini

如果不存在以下設定,增加該配置。如果被註釋了話,去掉註釋

session.save_path = “/var/lib/php/session”

2). 檢視該目錄是否存在:

#ls /var/lib/php/session

如果不存在,則手工建立

#mkdir /var/lib/php/session

修改目錄屬主為nginx

chown nginx:nginx session/ -R

重啟啟動php-fpm

service php-fpm restart

安裝配置phpmyadmin

下載並解壓到phpmyadmin
官方下載頁面:http://www.phpmyadmin.net/home_page/downloads.php
(中文使用者應該選擇下載all-languages版本)

下載完成後,解壓:

unzip phpMyAdmin-4.1.12-all-languages.zip

移動到相應的目錄位置,並改成容易訪問的名稱:

mv phpMyAdmin-4.1.12-all-languages /www/phpmyadmin

配置phpmyadmin
複製一份配置檔案:

#cd /www/phpmyadmin
#cp config.sample.inc.php config.inc.php

配置config.inc.php

#vi config.inc.php

設定一個內部使用的祕鑰(和內部加密有關,與頁面登入沒有直接關係)

$cfg['blowfish_secret'] = 'ww.tudaxia.com'

配置Nignx下的站點

vi /etc/nginx/conf.d/phpmyadmin.conf

server {
listen 8081;
server_name localhost;
access_log /var/log/nginx/phpmyadmin-access.log main;
location / {
root /www/phpmyadmin;
index index.php;
}
location ~ \.php$ {
root /www/phpmyadmin;
fastcgi_pass  unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
}

重啟nginx:

#service nginx restart

完成安裝,訪問 http://yourserver:8081/
測試phpmyadmin。

火爆浪子 iT邦研究生 1 級 ‧ 2019-11-19 12:23:31 檢舉

請問,我換成了 nginx 後,也設定好 root 專案路徑了,開啟時可以瀏覽,但 php 卻無法被解析?

0

1.如何讓 Nginx 能跑 phpmyadmin?發現安裝 phpmyadmin 時沒有 Nginx 可以選
同2的解答,先跳過

2.如何啟用 rewrite 功能?
nginx比較沒所謂的rw規則觀念。認真來說的話,你得將其視為路由導向的一種觀念。這樣你會比較容易清楚。

3.如何新增、啟用網站?apache 做法是 conf 做設定、設定PORT然後 a2ensite 啟用
都在conf上。預設的nginx.conf其實已經有相關的例子給你看了。

4.Nginx 改變URL的方法?例如隱藏副檔名等等
同2

認真來說,想學nginx是很好的事。但你得明白跟以前httpd的設定方式是不同的。
如原來在htaccess的設定。是不能用在nginx上的。
網路上有一些工具,可以幫你將原來設定在htaccess的rw規則。轉換成nginx用的設定。(但不一定完整)。你可找找利用。

總之,nginx要說難不難,要說簡單不簡單。
重點是光你說的第一點,我就不認為你需要學nginx了。因為要換nginx。會需要一定的功力。
很不好找到所謂的一鍵安裝包處理。(當然認真找的話還是找的到的,如你剛說的phpmyadmin,其實有對應nginx的rpm包可以自動安裝)

我要發表回答

立即登入回答