/ / Свързване от PHP към Oracle DB с помощта на Oracle Wallet - php, oracle

Свържете се от PHP към Oracle DB, като използвате Oracle Wallet - php, Oracle

Възможно ли е да конфигурирате PHP да използва защитен външен магазин за пароли, както е описано в http://download.oracle.com/docs/cd/B19306_01/network.102/b14266/cnctslsh.htm?

Отговори:

2 за отговор № 1

Да, възможно е, трябва да:
1 - създайте портфейл (както е обяснено във вашата връзка)
2 - поставете Oracle instant client и файловете на портфейла някъде на сървъра с Apache + PHP (например / opt / instantclient и / opt / wallet)
3 - стартирайте Apache със следните променливи:

ORACLE_HOME=/opt/instantclient
LD_LIBRARY_PATH=/opt/instantclient
TNS_ADMIN=/opt/wallet

4 - В / opt / wallet създайте tnsnames.ora файлове с това съдържание:

WALLET_NAME =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = DB_IP)(PORT = DB_PORT))
(CONNECT_DATA = (SID = DB_SID))
)

където WALLET_NAME е името на избрания портфейл, когато портфейлът е бил създаден, DB_IP е ip адресът на базата данни или името на хоста, DB_PORT е db портът, а DB_SID е sid на базата данни
5 - В / opt / wallet създайте sqlnet.ora файлове с това съдържание:

WALLET_LOCATION =
(SOURCE =
(METHOD = FILE)
(METHOD_DATA =
(DIRECTORY = /opt/wallet)
)
)

SQLNET.WALLET_OVERRIDE = TRUE

6 - рестартирайте Apache

От страна на PHP кода сега можете да се свържете с базата данни, като отворите връзка със следния код:

$conn = oci_connect("/", "", "WALLET_NAME", null, OCI_CRED_EXT);

можете да използвате иначе oci_pconnect, за постоянни връзки и същия синтаксис
Надявам се това да помогне и не съм забравил нищо